4 All numbers mentioned here can be found as patches on
5 http://savannah.nongnu.org/patch/?group=mldonkey
7 2007/02/15: spiralvoice
9 Split Changelog, all stuff newer than 2.7.7 is now in distrib/ChangeLog
10 -------------------------------------------------------------------------------
11 2006/06/19: version 2.7.7 = tag release-2-7-7
12 5196: IP: Store IPs with two int values instead of four to save RAM (pango)
13 5195: BT: Log tracker error messages in UTF-8
14 5194: HTML: Print warning on opening page when enable_servers is set to false
17 5191: HTML: remove sysinfo on opening page & option motd_html
18 5192: Fix deactivation of verbosity "gui"
19 5163: Configure: CVS SCM support for Mac OS X 10.3 (gstat)
22 5158: HTML: Use table for printing buildinfo and runinfo data (schlumpf, pango)
25 5187: New option: BT_import_new_torrents_interval,
26 ignore Thumbs.db & desktop.ini in directory lists
27 5186: GUI: Send only non-empty real_startup_message string
30 5156: HTML, improve Options output (schlumpf)
31 * new command html_mods_use_js_helptext (true|false)
32 to change display of helptext between javascript popup`s and html table
33 * fix some padding and border bugs
34 * add "toggle js_helptext" button to 'vo' and 'voo' to directly toggle the style
37 5061: New option small_files_slot_limit to push release of small files (pango)
38 all files below the configured file size (default 10kb) are uploaded
39 through one reserved slot
40 5144: Increase default max_upload_rate to 10 (schlumpf)
41 5177: HTML, Options: update display after changing options (schlumpf)
42 5176: Swarming: Change error message text and verbosity for BAD WRITE
43 BAD WRITE is not really an error, MLDonkey just receives unwanted data
44 5175: GTK1 oldgui: Last compile fix for abstract verification bitmaps (pango)
45 5174: Abstract verification bitmaps:
46 compile fixes for GTK1 GUIs, move generic code to CDK (pango)
47 5173: Swarmer: Small fix for merged downloads (WIP7b') (pango)
50 5172: EDK: Log error which causes pausing a download
51 5171: New command group "Driver/Users",
52 print help text for "Bad number of arguments" error message
53 5170: Fix default max_indirect_connections, minimum is 30
54 5169: HTML, Options: add description to option section buttons,
55 remove 'save' button (schlumpf)
56 5168: Global module to abstract verification bitmaps (pango)
57 5167: Swarmer: Fix saving ini data for merged downloads (pango)
58 5166: Swarmer: New module to abstract verification bitmaps (pango)
61 5164: CommonSwarming: Pangos WIP5e'
62 * When cutting a range, the reciprocal link of the range after the right part
63 still references the left part
64 * When cutting a block in two parts can before empty, but then can also before
65 complete (if they have no ranges left)
66 * Added bad_writes_is_back patch
67 * When find_range can only find ranges already being downloaded, it now first
68 does a quick check to see if there's no other, probably more interesting,
69 blocks remaining. If so, it forces a block change (report no more ranges left)
70 * While it's a good feature in itself, it's probably a workaround for a bug in
71 select_block (?); It seems that blocks oversaturated with sources happen way
72 too often (4 or 5 sources on a single range shouldn't happen).
73 * Compute the size of unselected ranges in each blocks, so that sources don't
74 "rush" on blocks just left by a source.
75 * Some BAD WRITEs seems to happen because we forget ranges we requested
76 (when switching blocks ?)
77 * Replaced call to clear_uploader_ranges by a call to clear_uploader_intervals
78 in BitTorrent support Choke message handler.
79 5063: EDK: remove duplicate entries in shared_files_new.ini (pango)
80 5160: Remove stale avifile.ml, clean commonMultimedia logging
81 5159: Compute magic values only when needed
82 5157: add some line breaks to option help text for shorter lines (schlumpf)
85 5153: New command: force_web_infos to manually download web_infos URLs
86 5152: Do not connect friends from disabled networks
87 5151: Options: New stringvalue functions needed for multiuser support
88 5150: Log: Fix log when server list is empty in check_blocked_servers
91 5149: Log: Some additions for commonSwarming
92 5148: Mail: Fix for multiline SMTP responses (zet)
93 5143: HTML/Telnet: Country codes for servers
94 5147: G1/G2: Display proper filename (and therefore support rename) (zet)
95 5145: EDK: Fix md4 hashing when filesize is an exact multiple
96 of edk chunk size, MLDonkey is now eMule-compatible (zet)
99 5141: Swarmer: New option swarming_block_selection_algorithm (pango)
100 * Allow to choose swarmer block selection algorithm at runtime.
101 - Algorithm 1 is the current default algorithm
102 - Algorithm 2, from WIP3o patch, should try harder to complete partially
103 downloaded chunks, specially with Bittorrent. It was previously
104 reverted because of unknown performance problem (slower download ?)
105 5140: Update .cvsignore files (pango)
106 5138: Catch ip banned exception (zet)
107 5137: HTML: Fix display of file magic values with '
108 5136: FileTP: fixes and enhancements (zet)
109 * Add "FTP-chunk_size" option (0 = no chunks = download full file at once)
110 -- A chunk_size would be required if downloading from > 1 source
111 * Add FTP downloads to bandwidth controller (for stats & speed limiter)
112 * Support FTP sites that do not buffer input (MS FTP)
113 * Add support for user/pass (http://user:pass@site or ftp://user:pass@site).
114 This also adds user/pass support to http_client.
115 * Error codes from HTTP (ie: 404) and some from FTP are supported (530 sometimes
116 signals a retry, sometimes a login failure so a regex was used (lftp)).
117 Downloads are paused when a hard error is received (and noted in the log).
120 5131: New option gui_log_size: number of lines for GUI console messages
121 5129: HTML: Display client_bind_addr in options menu
122 5124: Log: Login messages can be disabled with verbosity "no-login"
123 5130: CommonSwarming: Pangos WIP4a'
124 thanks for testing goes to SchAmane, CruX, jave (forgot someone?)
125 That's a huge patch over CommonSwarming module (whose job is to select what data
126 to ask from connected sources, and the merging of received data),
127 I hope I'm not forgetting anything important :
128 * first, it's a mantainance patch; Lots of code have been reworked for
129 readability and compactness (iterators...), functions grouped together,
130 sometimes renamed to more descriptive names. Lots of comments have been added,
131 including the description of invariants I've found, and a nice ASCII art
132 schema of the swarming datastructures ;)
133 * naming has been made more consistant, to differenciate chunks (from each
134 network view) from blocks (internal to swarming), and intervals (list of
135 int64 * int64 beggining/end offset pairs)
136 * Support for bitmaps encoded as strings (AvailableCharBitmap) removed, since
137 it's no longer used anywhere; use the more compact AvailableBitv instead
138 * Removed range_current_begin from ranges, it's enough for a range to have a
139 beginning and a end ;)
140 * Rewrote compute_block_num to have precise preconditions, and algorithm proof
141 * Added some assertions to better enforce invariants
142 (on verification bitmaps, for example)
143 * Allocation of ranges is now delayed until the very last moment, instead of
144 when a chunk starts being downloaded. Main benefit (beside small memory gain)
145 is that requests for different ranges sizes can be fulfilled at any time.
146 * Modified received function so that no BAD WRITE message can happen anymore:
147 condition when data that does not start from the beginning of a range is
148 correctly detected and data discarded
149 (since ranges cannot handle that case anyway)
150 * Rewrote a much simpler version of present_intervals
151 * Rewrote block selection algorithm for readability and flexibility; select_block
152 simply "folds" over all available blocks, using compare_choices function to
153 keep the best available one(s). May need some more CPU (no fast exit)
154 * Fixed donkey uploaders calls when disconnected
155 * Reenable the copy of identical chunks between files. Opportunities for copies
156 are checked every 5 minutes.
157 * Made file writing a bit smarter in Unix32 module so that writing zeroed chunks
158 (as can happen a lot with chunks copying) on an otherwise sparse temp file
159 does not allocate disk space. A bit hackish.
162 5121: EDK: Remove obsolete option emule_compression
163 5122: improve block_list output and runinfo ip blocking (schlumpf)
164 5123: Fix Invalid_argument("UTF8.length") bug in HTML, down-/uploaders
165 -------------------------------------------------------------------------------
166 2006/05/21: version 2.7.6 = tag release-2-7-6
167 5119: HTML, Options: Include Wiki link in options names
168 5117: Telnet: replace "avail" by "last seen"/fix non-ASCII-filename column width
171 5118: Log: Correct prefix for donkeyClient.ml
172 5116: HTML: Fix javascript popup in search results for Opera (dextarr)
173 5112: Fix lprintf_nl (search/replace ()'s) (zet)
174 5113: Fix config/wget.c (zet)
175 5111: Configure: Fix $SOURCE_DIR broken since patch #5095
176 5109: New option: pause_new_downloads
177 - Set to true all new downloads will be paused automatically.
178 - This option is automatically set to false on core start.
179 EDK: Disable ED2K_connect_only_preferred_server if not preferred server is
180 found, this check is done once per minute
183 5107: Configure: Check for MAGIC_ERROR in magic.h
184 5106: BT: only send stop once on exit and then wait for success (Amorphous)
185 5105: BT: Avoid starting torrent which has the same name
186 as a currently downloading torrent
189 5097: HTML: Improved DL multiline input button (jave)
190 5103: Fix compile bug in magiclib_stub.c on Solaris & NetBSD
193 5101: G2: Gnutella2 fixes/log updates (zet)
194 - Gnutella2 (G2) is working again
195 - Re-enables search result networks
196 - Log logged-in users
197 5098: EDK: Update option description for initial_score
200 5090: Http_client: Fix 302 redirect when Location starts with "."
202 5095: Configure: improve libpng detection, optical improvements
205 5094: Wget: New internal variable req_save <bool>
206 5093: CommonSwarming: Verbose error message if file size does not match
207 5092: HTML, rss: Add startbt link
208 5091: HTML: update EDK history links
211 5089: IPBlock: Print seperate lists in block_list command for IPs
212 blocked by local and web IP blocklists (pango)
215 4976: Filetype recognition with libmagic
216 - new debug command: debug_dir, prints magic values for all files
217 - display file magic values in vd & upstats HTML popup & vd #num
218 NetBSD/Solaris users have to disable this function "--disable-magic"
219 until this bug is fixed:
220 http://savannah.nongnu.org/patch/?func=detailitem&item_id=4976#comment9
221 5088: Gnutella/FT/http_client fixes (zet)
222 - Gnutella (G1) is working again
225 5087: HTML, upstats: new tooltip with complete filename,
226 respect max_name_len for filename
229 5083: HTML: Update EDK file history links (unease)
232 5082: FileTP/Fasttrack/Soulseek: Fix splitting chunks off-by-one (pango)
233 5081: Change default ip_blocking_descriptions to false for faster startup
234 5080: Only print servers of enabled networks (pango)
235 5079: Ignore ._* in directory lists (pango)
236 5078: Telnet: Remove HTML code from sysinfo command
237 5077: FT: Fix fasttrack connection problem and adds a bootstrap nodes file url
238 Removes old/broken imesh bootstrap node (zet)
241 5076: Gd: Do not disable html_mods_vd_gfx if core is compiled without GD support
242 5075: DNS round robin, keep all IP addresses associated with DNS names,
243 and return next one upon each request. (pango)
246 5069: EDK: Fix broken unicode URIs parsing broken since 2.7.4 (pango)
247 5074: Change default Ocaml version to 3.09.2
248 5073: Update default IP blocklist URL, replaced
249 http://www.bluetack.co.uk/config/antip2p.txt with
250 http://www.bluetack.co.uk/config/level1.gz
251 5068: New global option user_agent, current option BT-user_agent overrides
252 the global value in BT module (pango)
253 5064: BT: only try to connect to http trackers (pango)
254 5040: Overnet: Open TCP port only when network is active
257 5036: BT: Correctly parse .torrent files with an empty directory (again)
258 5039: Fix dp500 compile
259 -------------------------------------------------------------------------------
260 2006/04/13: version 2.7.5 = tag release-2-7-5
263 5035: Make Soulseek, Opennapster, DirectConnect compilable again
264 This does not mean the network modules work again,
265 they only compile again. More work is needed.
266 5032: CommonSwarming/WIP2: Some function rewrites and comments (pango)
269 5031: Merge CommonSwarming and CommonSwarming2 code (pango)
272 5029: EDK: Remove set_brothers command and brotherhood option
273 5030: Update config.guess and config.sub to version 2006-02-27
274 4778: CommonSwarming: In addition to the first and last chunk also load
275 the second last chunk if available before the rest to improve preview
276 5028: New environment variable for file_completed_cmd:
277 $DLFILES (number of downloading files)
278 5027: EDK: Deactivate DonkeySUI if /dev/urandom is missing
281 5021: Fix compile bug in tryopen patch when bzip2 is disabled
282 5020: Allow compile with Ocaml 3.09.2 CVS code,
283 3.09.1 will stay default for MLDonkey-compiled Ocaml
284 5016: Options save: Really fix bug addressed in patch #5015
287 5015: Fix option file saving bug introduced in tryopen patch
290 5011: EDK: Update server info received by UDP when
291 update_server_list_server false (pango)
292 5009: Ignore files .DS_Store and ._filename.ext in dir listings on all platforms
293 5006: Small logfile change
294 5004: Automatically closes opened descriptors using "tryopen pattern" (pango)
295 5005: CommonBlocking: Do not block IPs when GeoIP database is not loaded
298 5003: BT: Improve client recognition (zet)
299 5002: Overnet: Fix Out of Memory Exception (zet)
302 4997: Swarming: correctly create a new range when one is splitted (pango)
305 4931: CommonBlocking: Block/allow IPs by country codes (requires GeoIP) (pango)
307 - ip_blocking_countries, insert country codes here
308 - ip_blocking_countries_block true|false
309 false: use ip_blocking_countries as block list,
310 all other countries are allowed
311 true: use ip_blocking_countries as allow list,
312 all other countries are blocked
313 4995: HTML: Fix friends filelist display
314 4996: HTML: Add/remove for web_infos (vwi), update old contact.dat URL
315 - web_infos, rename command add_url to urladd, new command urlremove
316 - prints option help texts for web_infos and calendar command
317 - file_kinds are now printed as list with descriptions for easier setup
320 4917: HDD space check
322 hdd_send_warning_interval
323 Send a warning mail each <interval> hours for each directory,
324 0 to deactivate mail warnings.
327 Mininum free space in MB on temp_directory, minimum 50
328 hdd_temp_stop_core, default false
329 If true core shuts down when free space on temp dir is below
330 hdd_temp_minfree, otherwise all downloads are queued and a
331 warning email is sent.
334 Mininum free space in MB on core or log directory, minimum 20
335 hdd_coredir_stop_core, default true
336 If true core shuts down when free space on core dir is below
337 hdd_coredir_minfree, otherwise all ini file saving is stopped
338 until core shutdown and a warning email is sent.
339 Logging is sent to RAM when log dir is full.
341 The hard-coded minimum values can not be circumvented, MLDonkey will always
342 perform these HDD space checks once a minute.
345 4985: Log file clean-up for verbosity = "md4"
348 4981: Dllink: Fix wrong referer in HEAD request
349 4980: Multiuser: internal admin_user variable
350 4979: Fix hashing large number of files
353 4972: FileTP: Allow ftp:// downloads via dllink command
354 4971: BT: Allow read-only access for shared files
355 4967: CommonUserDb: Keep old user database updated for easy downgrades
358 4962: BT: New command "startbt" to force the start of a torrent download (jave)
361 4963: Re-apply $DEVFLAGS to Makefile.in (pango)
362 4961: EDK: New default URL for server list download
363 4960: Ignore .DS_Store on MacOSX, BT: ignore dirs in torrents/incoming (pango)
366 4954: New function Unix32.owner to read user and group entry of a file
367 - to debug use command debug_fileinfo <file>
368 - renamed debug command "disk" to "debug_disk"
369 - renamed debug command "rlimit" to "debug_rlimit"
370 4950: Close unneeded file descriptors
373 4946: System-wide cookies and referers option
374 - MLDonkey will not move data from bittorrent.ini to downloads.ini
375 - This data will be used in web_infos, dllink and BT module.
376 4951: GUI: Update server country codes after loading GeoIP data
377 4949: Gzip/Bzip2: Close opened FD after opening an invalid archive file
378 4945: BT: Automatically start new torrents downloads
379 - new directory $MLDONKEY_DIR/torrents/incoming, all files present
380 in this dir are started automatically, its scanned every 10 seconds.
383 4939: Support for compressed ipfilter.dat files (.gz, .bz2 or .zip) (pango)
384 4930: giFT GUI: Authentication support (pango)
385 - login with giFTcurs now has to be done like this: giFTcurs -p user:password
388 4938: Improve MLDonkey system user database
389 due to older problems with HTML interface:
390 - renamed command add_user to useradd
391 - renamed command remove_user to userdel
392 - user name is printed in browser title when bwstats is active
393 -------------------------------------------------------------------------------
394 2006/02/26: version 2.7.4 = tag release-2-7-4
397 4928: BT: Fix invalid encoding in announce URL (darkfader)
398 - removed old, broken version and added new version
401 4934: FileTP: Small improvements
402 - fix download restart bug when core is restarted, sources where not loaded
403 - save referer values to files.ini
404 - display amount of transfered data in downloaders list
405 - display source IP and Countrycode in HTML downloaders list
406 - display filesize in GUI
407 - display number of sources in GUI
408 4933: BT: Display number of sources in GUI
411 4928: BT: Fix invalid encoding in announce URL (darkfader)
412 4929: Do not print password_empty warning if enable_user_config true
413 4926: Runinfo: Warn about not-working DNS resolution,
414 /dev/urandom detection was not disabled if --disable-donkeysui is used
417 4922: OpenBSD: Small change for patch 4920
418 4921: MinGW: show current DL & UL stats in console title (Schlumpf)
419 4909: Print warning messages when run on non-supported operating systems
420 currently for example Windows 95/98/ME (Schlumpf)
421 4920: Cleanup included header files in C code (Schlumpf)
424 4910: EDK: Use updated protocol information when parsing
425 consecutive messages (sam_dennis)
426 4915: Log: Small cleanups
427 4918: some syntax and comment cleanups in stubs_c.c (Schlumpf)
430 4906: MinGW: improve uname output (Schlumpf)
431 4908: Configure: Fix for Beos, allow use of Dragonfly BSD
434 4883: Mac OS X: Fix for broken Apple cpp-3.3
435 4902: EDK: Stub respond to directory browsing requests (sam_dennis)
436 4905: Update for patch 4823: add another -fno-fomit-frame-pointer
437 in config/Makefile.in to avoid breaking CryptoPP (mikeX)
438 4903: EDK: Remove obsolete donkeyNeighbours (thx to sam_dennis)
439 4907: EDK: Fixed copy/paste error in emule miscoptions1 reading (sam_dennis)
442 4904: Configure: Raise required autoconf version to 2.55 due to AC_MSG_FAILURE
445 4892: Fix make when CXXFLAGS is defined (mikex)
446 4894: EDK: Support "new ed2k meta tags" to allow browsing
447 shared directories of newer eMule clients (sam_dennis)
448 4891: Configure: Override system-installed Ocaml and force local compile
449 Use ./configure --enable-force-ocaml to force MLDonkey to compile Ocaml,
450 regardless if the system has Ocaml already installed or not.
451 --enable-ocamlver=CVS uses a CVS checkout of Ocaml HEAD.
452 4885: EDK: Show correct IP of indirect clients in uploader list
455 4879: EDK: Support for sources in ed2k:// links
457 ed2k://|file|a.txt|1|AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|/|sources,1.0.0.0:4662|/
458 4849: EDK: Fix hashing of newly shared files
459 - avoid hashing shared files twice
460 - avoid problems while hashing big files
461 - remove obsolete compute_md4_delay option
462 4878: Addition to patch 4875 (conditional bzip2 support using cpp)
465 4877: BT: Recognize Ktorrent clients (CruX, zet)
466 4876: EDK: Remove obsolete option random_order_download
467 4875: conditional bzip2 support using cpp (pango)
468 4870: runinfo: add connected_user and check empty PW (schlumpf)
469 4872: Fix gd detection on NetBSD, use data from gdlib-config
470 MinGW compile-guide was updated, gdlib-config has to be changed
471 4871: Optimize some Printf.sprintf "%s" code
472 4869: Remove obsolete redirector code
473 http://mldonkey.sourceforge.net/Redirector
474 4856: reverse patch: configure: disable iconv by default on MinGW
475 it is not necessary anymore
478 4867: Use setrlimit to raise allowed ulimit open files
481 4863: GUI/Multiuser: Prevent kill by users other than admin
482 4862: EDK: Fix broken import of eMule temp Files (import_temp) (schlumpf)
483 4860: Multiuser: print warning if admin password is empty
484 - user admin is re-created if deleted, it has to be present in any case because
485 some commands are only available for admin, like users, remove_user and kill
486 - create structure for startup messages, displayed on GUI, HTML, Telnet
487 4859: Multiuser: Only user "admin" is allowed to change options
488 if the new option enable_user_config (default true) is set to false
489 4858: HTML: Update some links to mldonkey.sf.net
490 4857: SIGUSR1 & SIGUSR2 do not exist on Windows
491 4856: configure: disable iconv by default on MinGW
492 4853: Fix HTML errors on rss command output (unease)
495 4851: Support system signals SIGUSR1 & SIGUSR2
496 SIGUSR1 saves options
497 SIGUSR2 performs garbage collection
498 4850: Fixed bitprint hashing for files > 4GB (thx to zet)
499 mld_hash: implement SIGINT and SIGTERM signals
502 4844: Fix Solaris compile broken since DonkeySUI patch
503 4830: Update Wiki links
504 New Wiki URL: http://mldonkey.sourceforge.net
505 New Forum URL: http://mldonkey.sourceforge.net/forums
506 4843: HTML: Improve output of rss command
507 4842: Some logfile stuff
508 4841: Create new dir web_infos for web_infos files,
509 BT: do not save .torrent or announce.*
510 all files downloaded by web_infos go to $MLDONKEY_DIR/web_infos
511 to avoid downloading files twice move files from $MLDONKEY_DIR
513 4826: improve error message due to corrupt config files (schlumpf)
514 4821: improve display of sysinfo (schlumpf)
517 4816: Update Ocaml-RSS and Xml-light to current versions
518 4827: longhelp cleanup (anhi)
519 4823: EDK: CryptoPP optional, disable with --disable-donkeysui
520 Makefile: link CryptoPP stuff only in binaries which need it
521 Buildinfo: show compiler versions
522 Configure: display compiler versions (schlumpf)
523 Configure: if iconv checking fails continue with disabled iconv
524 Configure: do not use bzip2 if bzip.h is not found (FLI4L buildroot)
527 4820: Move CommonGraphics to DriverGraphics, check libgd version
528 Configure: Check if libgd > 2.0.14 is installed
529 NetBSD: added paths for libgd package
530 NetBSD: adjusted stat command to properly read SCM date
531 move build-, run-, and diskinfo command to driver module
533 -------------------------------------------------------------------------------
534 2006/01/19: version 2.7.3 = tag release-2-7-3
535 4791: web_infos: New type geoip.dat, save files to local disk,
536 re-download only if file on server is newer
537 - now all files except type "rss" in web_infos are saved to local disk
538 if not present or server version is newer
539 - MLDonkey uses HTML header last-modified to check if a file has been updated
540 - downloaded file timestamp is changed to last-modified time
541 - show number of IP blocking ranges in runinfo
542 - new web_infos kind: geoip.dat
543 - automatically add geoip.dat to web_infos
544 - support for *.gz|bz2|zip compressed GeoIP.dat files
545 4811: EDK: Print warning when starting a file too big for filesystem,
547 4810: Update search results with highest avail/completesources tags (zet)
550 4803: BT: force uniqueness of added trackers by "trackers" command (pango)
551 4801: EDK: add more server info fields (html and guiprot) (zet)
552 4798: Fix thread recognition on *BSD
555 4797: EDK: Always put server connect requests in connection queue,
556 whether max_opened_connections is reached or not
557 Connection will be established later when a socket is available
560 4796: Windows: Log proper warning when MaxUserPort is reached (thx to Enig)
561 4795: Mailer: Fix Subject encoding (bogeyman)
562 4716: BT: new command "tracker" to add trackers (bogeyman)
565 4792: GeoIP: Add license (distrib/GeoIP_LICENSE.txt, runinfo)
566 This product includes GeoLite data created by MaxMind,
567 available from http://maxmind.com/
568 4776: EDK: Avoid LowID if max_indirect_connections is reached (thx to zet)
569 4787: EDK: Show server version (ported from Mulus - thx to Knocker),
570 disconnect blocked server after loading IP blocklist
573 4790: Some logging stuff
574 4781: Disconnect connected server before removing
575 4782: Configure: Replace AC_CHECK_FILE with "test -d" to allow cross-compile
578 4770: Change file opening mechanism, open rw only when needed (pango)
579 new verbosity option "file" to control Unix32 file handling
580 4777: Display IP:port for LowID clients, GUI protocol update (zet)
583 4769: HTML: Fix some Geoip display bugs
586 4768: Dynamic loop delay (pango)
587 4765: Add GeoIP.dat support (zet)
588 GeoIP is a GPL database that maps IPs to countries.
589 http://www.maxmind.com/download/geoip/database/
590 This patch adds support for a "geoip_dat" option.
591 It is a simple ocaml translation of just the geoip country lookup code.
592 If active, the file is left open and consulted on demand.
593 It didn't seem to slow anything down on my slow system.
594 Sends the country # to the gui, use latest Sancho version to use it.
595 Web: displays country codes in a column (name in tooltip).
596 Maybe someone wants to add flag images (please make them optional).
597 -------------------------------------------------------------------------------
598 2006/01/05: version 2.7.2 = tag release-2-7-2
599 4764: Patch for MLDonkey-compiled Ocaml-3.09.1 to fix GTK1 oldgui compile
600 4763: Compile patch for GTK1 oldgui with Ocaml 3.09.1
601 Ocaml 3.09.1 has a bug which prevents compiling GTK1 oldgui.
602 A patch can be found here: http://caml.inria.fr/mantis/view.php?id=3948
605 4761: Insert glibc version in archives build by release targets
606 4760: Allow use of Ocaml 3.09.1
607 MLDonkey can now be compiled with Ocaml 3.08.3/4, 3.09.0/1
608 Default for MLDonkey-compiled Ocaml is now 3.09.1
609 4759: Configure: Improve gcc check
610 4757: Compile patches for MorphOS (Christian Rosentreter)
611 4748: HTML: Allow rename of files with '#', '&' and '%',
612 remove invalid chars from filenames depending on OS (thx to pango)
613 4756: HTML: Print build- and runinfo on main page,
614 fix reload bug when changing html_mods/html_themes (Knocker)
617 4751: Ease use of messages_filter option (pango)
618 4753: Allow upper case MD4 for ed2k-links in mldonkey_submit (fcrozat)
619 4754: New parameter --auth for mldonkey_command (plf team)
622 4749: GUI: send shared sub_files to gui (zet)
625 4712: Change terminal color for command line from blue to cyan (romildo)
626 4742: Log: remove verbosity "tor" & "file", improve verbosity "verb"
627 4743: EDK: Print "File is already shared" when trying to start downloading
628 an already shared file
629 4744: Split client_timeout into ED2K-client_timeout and BT-client_timeout,
630 increase BT-client_timeout to 90 (tradie)
631 4745: Update config.guess and config.sub to version 2005-12-23
634 4725: Check if ulimit is sufficient for MLDonkey,
635 auto-adjust max_opened_connections
636 * moved ED2K-max_indirect_connections to downloads.ini
637 * max_indirect_connections is now a %-value of max_opened_connections
638 * minimum ulimit for open files is now 150 (most systems have 1024),
639 MLDonkey will refuse to start if ulimit is lower
640 * minimum max_opened_connections is now 75
641 * reduced max_concurrent_downloads from 60 to 50
642 * minimum ulimit -n 150 is used like this:
643 - 75 max_opened_connections
644 - 50 downloading files
646 - 20 fd as reserve for ini files
647 4704: Fix some C compile warnings (schlumpf)
648 4739: Fix some cross-compiling obstacles, remove Ocaml 3.08.2 compatability
649 * Cross-compiling is only possible with a correct Ocaml toolchain
650 * MLDonkey can not build this Ocaml toolchain
651 * This patch only fixes some autoconf checks
652 4735: MinGW: pause before core exit because of existing Pid file
653 4736: New commands: sysinfo, runinfo and diskinfo
654 * removed temp_directory and core_directory from shares command output
655 * new commands sysinfo, runinfo and diskinfo
656 * buildinfo now prints only buildinfo
657 * runinfo prints run-time information
658 * new command diskinfo prints filesystem data about temp_directory,
659 core_directory and all shared dirs
660 * sysinfo prints buildinfo, runinfo and diskinfo alltogether
661 4712: Change terminal color for downloading files from blue to cyan (romildo)
664 4732: Log: More infos for verbosity = " verb"
667 4728: fix date format (zet)
668 4730: BT: parse path.utf-8 (zet)
671 4726: New option space_overhead to adjust garbage collection (bogeyman)
672 4724: Windows: 10 seconds pause when core start fails
673 to make error messages readable
676 4723: New build target: make ocamldoc (pango)
677 4721: Log: Improve output for verbosity "verb", remove verbosity "hid"
680 4719: Fix linking of dp500 (pango)
681 4715: OV: Improve searching, longer ov timeout, some more bugfixes (bogeyman)
682 4718: Fix bug which prevented proper write to files introduced in patch #4694
683 4717: EDK: Removed unused variable file_md4s_to_register (bogeyman)
686 4703: BT: Deactivate dead trackers,
687 re-enable them if no active trackers are found (pango)
688 4708: HTML upstats: Enable preview for shared files
689 4652: dllink: reject EDK files > 4GB, print access errors for .torrent files
692 Removed orphaned files:
693 src/networks/donkey/donkeyFiles.mli
694 src/networks/donkey/donkeyInteractive.mli
695 src/networks/donkey/donkeyMain.mli
696 4710: Re-add some protocol information as comments removed by patch 4694
697 4709: Fix zip file extract broken due to patch 4694 (Ocaml 3.09)
698 4707: Fix recover_temp broken by patch 4674 (force_download)
701 4706: EDK: Remove donkeyChunks, use commonSwarming for op_file_check
702 4702: Correct timezone in e-mail, nicer uptime, timezone and uptime in runinfo
703 4694: Fix lots of compile warnings in Ocaml 3.09
704 4705: Update config.guess and config.sub to version 2005-11-11
705 Mozilla MLdonkey Protocol Handler updated to version 1.7
708 Removed orphaned files:
709 src/networks/fasttrack/fasttrack.ml
710 src/networks/gnutella/gnutella1.ml
711 src/networks/gnutella/gnutella.ml
712 src/networks/gnutella/gnutellaScheduler.ml
713 src/networks/gnutella/gnutellaZlib.ml
714 src/networks/gnutella2/g2Scheduler.mlt
715 src/networks/gnutella2/gnutella2.ml
716 4700: Log: New verbosity option "gui" to debug GUI protocol
717 4696: Fix some C compiler warnings
720 4687: Compile fix for Ocaml 3.09.0 (gildor), MLDonkey can now be compiled
721 with Ocaml 3.08.[2,3,4] and Ocaml 3.09.x (4687_min2.patch)
722 4693: Compile patch in sha1.c for FreeBSD (lioux)
723 4689: Catch exception in file_completed_cmd to let commit complete
724 4691: file_completed_cmd: $DURATION in seconds (debonair)
725 -------------------------------------------------------------------------------
726 2005/12/06: version 2.7.1 = tag release-2-7-1
727 4679: FileTP: Fix HTTP downloading for URLs with space chars, log cleaning
728 4674: EDK: Re-enable checking old_files before starting a download
729 and force_download command
730 4676: BT: decode_version fix and html sort fix (bogeyman)
733 4673: IPBlock: display original length and optimized length in block_list,
737 4672: FileTP: Fix major bug in HTTP downloading, introduced in 2.6.0
740 4671: Compile fix in CryptoPP.h for gcc-2.96 (trdw)
741 4670: Increase max_buffer_size limit for high-volume connections
744 4649: Updates for file_completed_cmd (pango, spiralvoice)
746 * added information to notification email if auto_commit is disabled,
747 email is sent by file_completed, not file_commit
748 * moved execution of !!file_completed_cmd from file_completed
749 to file_commit, kept option name for easier upgrading
750 this was done because the filename of a downloading file can be
751 different than the filename of the committed file if a file
752 with the same name as the to be committed file is already in
753 incoming. older method did not take this into account at all..
754 * added environment variables for file_completed_cmd, see description:
756 A command that is called when a file is committed, does not work on MinGW.
757 Arguments are (kept for compatability):
758 $1 - temp file name, without path
760 $3 - filename of the committed file
761 Also these environment variables can be used (prefered way):
762 $TEMPNAME - temp file name, including path
764 $FILESIZE - same as $2
765 $FILENAME - same as $3
766 $FILEHASH - internal hash
767 $DURATION - download duration
768 $INCOMING - directory used for commit
769 $NETWORK - network used for downloading
770 $ED2K_HASH - ed2k hash if MD4 is known
772 4667: Update Ocaml download URL
773 4666: Always create incoming directories before commit
774 4663: CryptoPP: Latest fixes ported from aMule CVS
777 4657: Fix for C files for AMD64, mipsel platforms
778 improve endianness checking in tiger.c, md5_c.c and CryptoPP.h,
779 print endianness in buildinfo, removed sha1_old code
780 4661: Log: newline before exception message when MLDonkey can not use a port
781 BT: exit if client_port = tracker_port
784 4654: Fix guiprot when addr not resolvable (zet)
785 4655: Set conn_user on gui (zet)
786 4656: BT: update last seen complete field and fix bitfield reading (zet)
789 4653: GTK2 GUI: add isohunt statistics (su_blanc)
792 4364: Let mlnet build under the cygwin unix emulation layer (Amorphous)
793 4648: GTK2 GUI: improve display of razorback stats (su_blanc)
794 added the display of filedonkey.com data
795 4646: BT: little change to recognise Clients (bogeyman)
796 4645: Fix donkey total uptime stats order (bogeyman)
799 4406: Unicode: Fix filenames in shared_files_new.ini and file rename
800 in HTML interface (mld_unicode_patch6.patch) (CML)
801 4440: New option shutdown_timeout, 3 sec, was hardcoded before (Amorphous)
802 4644: Update GNU config.guess and config.sub to current versions
803 4643: HTML: Fix gdstats output when html_use_gzip true
804 4640: Calendar: view calendar command: vcal
805 4641: Fix exception in load_web_infos
806 4642: HTML: Improve preview via webbrowser (pango)
810 4563: replace all Printf.printf occurences by Printf2.lprintf (su_blanc)
811 4479: Callback mechanism for low ID users does not work (miriup)
812 Reactivating submission of server IP and port during client
814 "However, sometimes, especially when I have no files to download I do
815 not receive callbacks at all. It is suggested to apply this patch in
816 a testing mldonkey for a week on a non-low id connection before including
817 it in a stable release, ... I can't test high-ID at all."
818 4574: Friends upload slot (pango)
819 -------------------------------------------------------------------------------
820 2005/11/19: version 2.7.0 = tag release-2-7-0
821 4631: Validate ED2K-client_private_key
824 4630: GTK2 GUI - some bug fixes (su_blanc)
825 * display Razorback graphical stats for currently selected file
828 4625: GTK2 GUI - bug fix (su_blanc)
829 * bug #14865 : availability display "dotty"
830 added alpha channel to availability pixbuf.
831 * bug #14963 : autosize slightly broken
832 the tick mark for 'autosize all columns' appears only if all columns are set
833 to 'autosize' mode. 'autosize all columns' triggers an 'autosize' mode for
834 all columns if at least one has not this mode set. Otherwise all the columns
835 are set to 'fixed' mode.
836 * bug : razorback stats
837 display stats on user request.
840 4583: Change stats.razorback2.com usage to on-demand (su_blanc)
841 to avoid overloading the server (disable_razorback_stats.diff)
842 4619: Remove duplicate Gc.compact () from EDK mem_stats (pango)
845 4617: GUI: send bt subfiles over gui prot (zet)
846 4587: Buildinfo: Split build-time and run-time information (schlumpf)
847 4350: Code cleanup : web interface chunks display (pango)
848 (web_chunks_using_tables_v2.patch)
849 4616: Change allow_browse_share, so only friends can see file lists (pango)
850 4615: Add -g to CFLAGS when --enable-profile (pango)
851 4605: replace string/bool bit arrays with bit vectors (zet)
852 4607: remove html output from telnet 'vc all' (zet)
853 4613: Optimizing Set.cardinal to reduce CPU usage (pango)
854 4614: Gtk2 mlgui improvements (su_blanc)
855 * fix bug : close all current searches when one quits mlgui
856 otherwise the core continues to search
859 * make a search request
861 * in HTML interface, check "View searches" tab.
862 * lower CPU usage by delaying heavy computations (use Glib.Idle)
863 * rework the search tab, just make it more simple,
864 limit results to max hits, added min availability criterium
865 * added Autosize columns. Should fix bug #14868
866 * change pixmap for availability bars in pixbuf. should fix bug #14865
869 4558: further Overnet patches, query_next_peers3.patch (bogeyman)
872 4586: cleanup brand stats code (bt/edonkey) (zet)
873 updated to coalesce bt software parsing and add some more ids
876 4589: CryptoPP doesn't like -fomit-frame-pointer, so remove it (przemoc)
877 4597: OV/KAD: fix a search reset bug (bogeyman)
878 4585: Change ED2K_max_sources_per_file from 20000 to 5000
879 4579: Slackware package (tgz) - basic mlnet support (ratmmmam)
882 4583: GTK2 mlgui improvement (su_blanc)
883 Lablgtk-2.6.0 is needed for GTK2 mlgui, it fixes a mem leak with GdkPixbuf.
885 * razorback stats: click on a file in the downloads tab to display the stats
886 (at startup wait for few seconds, the time to download the png files...).
887 * proxy options for mlgui
888 * a graph tab: global downloads, global uploads and a view per file
889 (downloads and uploads).
891 * fix Tray icon as per task #4694
893 * configuration files locations: mlgui and mlim do not need CommonOptions.
894 Should not change anything for the users as we check the $HOME variable.
896 4558: Overnet: several patches (includes and fixes patch #4551) (bogeyman)
897 * better detection of dead peers
898 * so we can ping less often
899 * and can be sure these peers are alive
900 * use ip:port from received pakets instead from the peer info
901 * use a weak Hashtbl for known_peers and remove search_known_peers
902 * we are removing all dead peers, in buckets and prebuckets,
903 (do not wonder, if you get less peers left ;o)
904 * do not send useless "Connect" pakets, Fillbucket really works
905 * every 30m file searchs were created twice.
906 There are really less peers than without this patch, maybe i'll have to tweak
907 how we fill buckets. But for now this works and produce less traffic.
909 4581: Fix upload rate for high volume connections (> 1.5Mbit/sec) (pango)
910 4584: HEAP: use GC.quick_stats for mem_stats level=0 (bogeyman)
913 4580: Update .cvsignore files (pango)
914 4564: HTML: fix vd p/d/queued output (zet)
915 4576: BT: remove sources when file is cancelled,
916 mem_stats: Garbage collector info (zet)
917 -------------------------------------------------------------------------------
918 2005/10/28: version 2.6.7 = tag release-2-6-7
919 4562: removed patch, breaks GUI connect after SIGTERM
922 4551: remove patch, breaks Overnet
923 4562: BasicSocket.ml fix, fix select when fd_tasks is empty
924 close all fd on exit (su_blanc)
925 4561: Options.ml4 proper old directory (su_blanc)
926 4560: mingw : proper detection of gToolbox.mli (su_blanc)
927 4559: mingw compilation of Crypto.cpp (su_blanc)
928 4553: HP-UX: If /dev/urandom is not present print info where to get it
929 4554: HP-UX: Compile fix for statvfs (disk usage statistics) (Inkus)
930 4555: EDK: Send emule_version on server login to prevent
931 "Your client is too old" message (Knocker)
932 4556: Fix linking mlnet to X and GTK libs when using --enable-gui (su_blanc)
933 -------------------------------------------------------------------------------
934 2005/10/25: version 2.6.6 = tag release-2-6-6
935 4551: OV/KAD: use kind like eMule does +misc bugfixes (bogeyman)
936 "do not wonder, if you get less peers left ;o)", also reduces traffic
937 4550: Create bitprint for large files (zet)
938 4549: html_mods: relevant_queues option (zet)
939 This patch creates a relevant_queues option which specifies a list of
940 queue #'s that should be displayed in the vd # sources table.
941 See sources command for the list of queues.
942 By default all queues except the DoNotTry queue(7) are displayed.
943 4548: IPBlock: really don't load descriptions on core restart,
944 if set to false (bogeyman)
947 4547: Fix dupe sending of motd/nets in gui_initialize (zet)
950 4545: make TAGS, creates files for source code navigation in Emacs (pango)
951 4544: Change internal code for statfs function (pango)
952 4543: Lower CPU usage, optimize CommonSources.count_file_ready_sources (pango)
953 4542: Remove Donkey-Fakes support, service is down
954 4541: New option BT_max_tracker_redirect
955 connect to bittorent trackers with http redirect (jhon)
958 4535: OV/KAD: Yet another improved logging (bogeyman)
959 4533: Yet another compile patch for mld_hash,
960 remove svg_converter with make clean
961 4534: Compile fix for make_torrent
964 4531: Compile fix for GTK1 oldgui
965 4530: Compile fix for mldonkeytop (pango)
966 4525: Always use svg_converter.byte (gildor)
967 4524: Fix building mld_hash (gildor)
968 4523: Fix building of svg_converter.byte (gildor)
971 4520: Check for /dev/urandom, /dev/null and $TEMP
972 4521: CryptoPP: Compile patch for gcc-2.96 (sworn)
975 4519: Int64ops cleanup (pango)
976 -------------------------------------------------------------------------------
977 2005/10/11: version 2.6.5 = tag release-2-6-5
978 4508: Configure: Print some important build targets
979 4507: EDK: Print server banners into logfile (pango)
980 4500: BT: Fix multifile download with zero-byte files (thanks to jave)
981 4506: replace obsolete longarry and fifo2 code (bogeyman)
984 4504: Clean http_server.ml logging
985 4502: Remove obsolete Weak2 sourcecode (bogeyman)
986 4503: OV: fill buckets only with peers we send to and heard of (bogeyman)
987 4499: Check for stalled pid file and remove it if MLDonkey is not running
988 (does not work on MinGW due to missing Unix.kill) (pango, spiralvoice)
989 4501: HTML: Fix chunk wrapping on IE (zet)
992 4477: prevented some compiler warnings (Schlumpf)
993 4496: Nicer summary of configure command
996 4337: improved upload scheduler (pango)
997 4494: fix infinite loop when create_dir_mask on fat32 (zet)
998 4495: BT: include Wiki link to report unknown clients (bogeyman)
999 4493: BT: Correctly parse .torrent files with an empty directory (zet)
1000 4487: BT/HTML: Display files inside a multifile torrent (bogeyman, jave)
1001 4458: EDK: add enable_sui toggle option (enabled by default) (zet)
1002 4491: Compilation fix for NetBSD>=2.99 (Thomas Klausner)
1003 4490: memstats for a weakhash and a new OV command dump_bucket (bogeyman)
1004 4473: New command: whoami
1005 4457: BeOS: Compile patch for CryptoPP (Michael Lotz)
1006 4460: Added search for .torrents via IsoHunt (WingMaster)
1007 4456: Fix shrink effect in vd for Opera (Luar Roji)
1009 4452: Clean configure.in, check for c++ compiler
1010 * zlib is not optional anymore
1011 * remove old code (Cryptokit, Broosnet etc.)
1012 * distinguish between Cygwin and MinGW
1013 * print start warning message only for Cygwin
1014 * remove whitespaces
1016 4450: Remove swarmer data when cancelling download (kempston, zet)
1019 4454: commonSources: add sources from resumed files
1020 (outside_queue sources) back to the queues (zet)
1021 4453: Telnet: Print reject message for connecting client
1022 if it is not allowed to connect,
1023 prepend "dllink" for all commands starting with "http://"
1024 4455: Improve make distclean
1025 4449: New parameter for pid file: -pid <dir>, small improvements for pid files
1026 4451: Correct the help of allowed_ips (gildor)
1029 4439: Fix for "make mlnet.byte" (zet)
1030 4438: Fix secure-ident related compile bugs in Opennap & Soulseek
1031 4437: BT: show up/down stats for Brand unknown (bogeyman)
1032 4436: EDK: Solve memleak in donkeyChunks (file_md4s_to_register) (bogeyman)
1033 4434: Added button to eMugle in Search (wingmaster)
1034 4432: Add more info to mem_stats (zet)
1037 4431: Newgui: Compile fix
1038 4419: EDK: Support secure user identification (crypto5, by zet)
1041 4424: OV: discard peers with ip 1.0.0.0 and random port
1042 4425: EDK: Support server extended getsources2 opcode (zet)
1043 4429: Better error message if MLDonkey lacks network support
1044 for a file in files.ini
1045 4427: BT: 10 retries / follow 10 redirections in
1046 dllink http://server/file.torrent
1047 4423: OV/KAD: Save only active peers to config files/ save max 200 peers
1051 4420: Remove obsoleted commonSwarming1 code
1052 4418: Re-activate sources_per_chunk option (pango)
1053 4417: BT: Improve BT upload speed (pango)
1054 4374: fix "max_hard_download_rate has to be doubled" (pango)
1055 This patch changes internal code, no option has to be changed
1058 4406: Improved Unicode filename support (CML)
1059 4412: OV: Handle OvernetPeerNotFound correctly (bogeyman)
1060 4411: OV/KAD: Some peers are not added to known_peers (bogeyman)
1061 4410: Shorter filesystem name for XFS
1062 4409: Compile fix if Bzip2 is not available
1063 4408: OpenBSD: configure.in fix to find libbz2 and others in /usr/local
1066 4397: Buildinfo: Run-time check for Windows OS version / Unix uname (zet)
1067 4403: html_mods: mem_stats in a single readable table (zet)
1068 4402: BT: BT-user_agent option (zet)
1071 4268: Web/Gui: free core's buffer allocated by vd # and gui (bogeyman)
1072 4393: Lower ip blocking memory usage (pango)
1073 new option ip_blocking_descriptions true|false
1074 4401: BT: Send 'stopped' event to all trackers when exiting (zet)
1075 -------------------------------------------------------------------------------
1076 2005/09/04: version 2.6.4 = tag release-2-6-4
1077 4392: Print "Core started" on stdout even if logging is enabled
1078 Fixes problems when MLDonkey is spawned by a GUI
1081 4247: memstats: BT/FT/GNUT/G2: initial memstats, ALL: show nr of old_files,
1082 BT: nr of torrent files
1083 4390: Mail: Print incoming path if !!url_in_mail is used
1084 4389: BT: Fix core exit if dirs of a shared multifile torrent are not writable
1085 4368: new option: create_file_sparse true|false, this works only for
1086 files on NTFS drives in MinGW compiled MLDonkey (thanks to zet)
1089 4385: EDK: Preserve untested servers (pango)
1090 4351: optimize ip blocking lists (pango)
1091 4376: EDK: Re-enable result_done (already downloaded) in search results (zet)
1092 4126: Improved log_file handling
1094 * there is now a default log_file: mlnet.log, old downloads.ini is *not* updated
1095 * its default log_file_size is 2MB, this is checked only on core start,
1096 if log_file is bigger it will be resetted
1097 * logging will always be appended to log_file
1098 * new command "clear_log" to reset log_file while the core is working
1099 * new command "open_log" to reopen log after close_log
1100 * removed command "log_file", same can be achieved through "set log_file <file>"
1102 4384: HTML: Add "Import Serverlist" in servers,clean third button row (schlumpf)
1103 4365: Disable console "X" close button on MinGW, second version (CML)
1104 4382: Solve libgd configure in mandrake 10.0
1105 4381: better differentiation of eDonkey and BT Stats Table (schlumpf)
1106 4380: some info for SCM Version (CVS co Date/ SVN revision) (schlumpf)
1107 4379: Fix compile error when libgd is not present
1108 4378: Longhelp: Better description for add_user
1109 4377: Better description for shared_directories in downloads.ini
1110 4356: EDK: Improved server.met handling / fix contact.dat loading
1112 * Changed user agent from "MLdonkey" to "MLDonkey", solves problem
1113 when downloading files from www.gruk.org and www.srv1000.com
1114 * MLDonkey new recognizes links like ed2k://|serverlist|http://server/file.ext|/
1115 * "servers" command now takes URLs
1116 * if period in web_infos is zero the file is only loaded during core start
1117 (as requested by the owner of www.gruk.org)
1118 * in all places where a filename or URL for a server.met can be used this
1119 file can also be compressed with gz/bz2/zip
1120 * automatically replace old default server.met in web_infos
1122 "http://ocbmaurice.dyndns.org/pl/slist.pl/server.met?download/server-best.met");
1123 with fake servers free list from gruk.org:
1124 ("server.met", 0, "http://www.gruk.org/server.met.gz");
1125 * fixed bug which prevented loading Overnet contact.dat file in web_infos
1128 4368: Use sparse files on MinGW/NTFS (zet)
1129 4370: BT/Win32: fix multifile hashing (Amorphous)
1132 4366: HTML: more maintainable html_mods styles (pango)
1133 4367: Improve logging
1134 4361: New command: uptime
1136 Lots of improvements for MinGW, this platform now supports
1137 files > 2GB, threads and libgd generated statistics.
1138 Here you will find compilation instructions:
1139 http://mldonkey.sourceforge.net/Windows
1141 4342: Large_file support for mld_hash and MinGW MLDonkey core (zet)
1142 4358: Add thread support for MinGW (zet)
1143 4362: configure.in support for libgd on MinGW/FreeBSD
1144 4349: increase filedescriptor limit for mingw (zet)
1145 4365: Disable console "X" close button on MinGW (zet)
1148 4360: Configure: Test for nl_langinfo(CODESET)
1149 4359: Upload: Give upload slot truely randomly (pango)
1150 4347: Improve exit codes, codes were inspired by sysexits.h
1151 4345: Code clean: Optimize redundant time_to_string functions
1152 4357: Rename ed2k_hash to mld_hash
1153 4344: Improve ./configure checks (bzlib.h, iconv on Windows)
1154 -------------------------------------------------------------------------------
1155 2005/08/21: version 2.6.3 = tag release-2-6-3
1156 4254: Patch reverted, did not work
1157 "html_mods: Table data is incorrectly centered"
1158 4336: Improve some log file messages
1159 4321: BT: fixed "make_torrent produce corrupted files on Windows" (beedauchon)
1160 4335: Buildinfo: Fix bug if Bzip2 version string is empty (beedauchon)
1161 4329: HTTPClient: Implement retries for failed requests
1162 4319: Fix compile if libbz2 is not available,
1163 new configure option: --disable-bzip2
1164 4334: BT/FileTP: Some progress on cancel bug (kempston)
1165 4333: send ip blocked addr state to gui, compute_torrent from gui (zet)
1166 4332: Let configure fail if GNU make is not installed
1169 4323: HTML: Search results: new colums for Bitrate, Codec and length
1170 4324: Log: Improve output for verbosity "hid"
1171 4322: EDK: compatibleclient 40 -> Shareaza
1172 4320: Fix compile on FreeBSD < 5.3
1175 4317: Updated ./configure for compiling lablgtk2 with --enable-batch
1176 4316: Updated ./distrib/Install.txt for Ocaml 3.08.4 and new GUI options
1177 4292: html_mods: Match styles default frameHeight with the common default
1178 4314: Allow compiling with Ocaml 3.08.4
1179 Compiling with 3.08.3 still works
1180 4312: BT: Allow seeding (beedauchon)
1181 4311: BT: create_torrent: default_tracker and default_comment (beedauchon)
1182 4309: GUI: send ed2k/bt network u/d totals (zet)
1183 4308: Gnutella/G2: Fix commit if no TigerTree is available
1184 4305: buildinfo: Print some system internals
1185 4304: EDK: Fix disconnect state with verbosity = "hid"
1186 4297: Create ini file backups on shutdown
1187 Note: file_sources.ini is never saved, it makes no sense to keep this file.
1191 * backup_options_format, default "tar.gz", "zip" can also be used
1193 * backup_options_delay, default 0
1194 How often (in hours) should a backup of the ini files be written into old_config.
1195 A value of zero means that a backup is written only when the core shuts down.
1197 * backup_options_generations, default 10
1198 Define the total number of options archives in old_config.
1200 Command save got two new parameters:
1201 * "save all" saves options, sources and creates a ini file backup
1202 * "save backup" speaks for itself;-)
1203 -------------------------------------------------------------------------------
1204 2005/08/11: version 2.6.2 = tag release-2-6-2
1205 4296: BT: Fix options parsing
1206 -------------------------------------------------------------------------------
1207 2005/08/09: version 2.6.1 = tag release-2-6-1
1208 4291: EDK: Better logging for unknown compatibleclient values
1209 4290: BT: Some small fixes for messages interested and cancel (beedauchon)
1210 4289: LOG: Improve verbosity "hid"
1211 4287: Better clear Fifo buffers (bogeyman)
1212 4268: Web/Gui: free core's buffer allocated by vd # and gui (bogeyman)
1215 4285: IPBlock: Server support
1216 * display in vm/vma if a server has a blocked IP
1217 * prevent connections to a IP blocked server,
1218 in EDK case this resulted in a LowID connection
1220 4284: Remove whitespaces / Some logging changes
1223 4279: MinGW: HDD statistics support
1224 4281: Remove white spaces / Some logging stuff
1225 4251: HTML: few fixes / new option html_frame_border true|false
1226 4278: Windows: Fix bug creating work dirs in empty dir
1229 4276: IPBlock: Never block local IPs even if they are in blocklist
1230 4274: Use relative path if downloads.ini is present
1233 4272: HTML: Cursor focus in input field
1234 4271: GTK2: Fix compile bug in src/gtk2/chat/chat_art.ml
1235 4155: Let MLDonkey create its data in $HOME/.mldonkey
1238 * if the core is started in a directory where downloads.ini exists
1239 this directory will be used, this is the same behaviour as before
1240 * on Windows the current directory will always be used,
1241 this is consistent with eMule
1242 * on other systems $HOME/.mldonkey will be created and used,
1243 this is consistent with eDonkey, aMule and Unix standards
1244 * if variable MLDONKEY_DIR is used that directory has priority,
1245 to simulate the behaviour without this patch use:
1246 export MLDONKEY_DIR="." && ./mlnet
1249 4270: Overnet: Convert local IPs sent by OV clients to real IPs
1250 4269: IPBlock: Several fixes, better zip file support
1251 4264: Fasttrack: Force commit of all complete files
1253 4258: BT: Statistics, recognize more clients, min_interval,
1254 torrents/old and more...
1255 This patch was done by Beedauchon, it incorporates weeks of work from him.
1256 * move .torrent to torrents/old if the file is not shared anymore
1257 * new command rm_old_torrents: delete all files in torrents/old
1258 * eDonkey like statistics for BT clients (csbt command)
1259 * compute_torrent and make_torrent can put a comment into the .torrent file
1260 * MLdonkey computes a BT-compatible client_uid starting with "-ML"
1261 * parse more fields from .torrent files and display them in HTML interface
1262 * Tracker: replace "/tracker" by "/announce"
1263 * Tracker: add "/scrape"
1264 * Multitracker support for downloading
1267 4263: Fasttrack: Force bootstrapping nodes
1270 4261: HTML: Add DL button - opens dialog for entering links (omgwtf2)
1271 4260: IPblock: Enable IP blocking for Overnet and HTTP server
1272 (=BT Tracker) (beedauchon)
1273 4257: Kick uploaders which send no data for more than 1 minute
1274 4256: Print message if glibc version mismatch
1275 updates for buildinfo (version of libbz2, libz, libpng)
1278 4255: HTML: updates for cs command
1279 4254: html_mods: Table data is incorrectly centered
1280 4253: HTML: New style Construction (omgwtf2)
1281 4251: few html fixes (reverted) (beedauchon)
1284 4250: Remove whitespaces from commonUploads.ml
1285 4249: HTML: Links to fake check services in search results (bogeyman)
1288 4194: FileTP : Add support for "referer", error messages cleanup (beedauchon)
1289 4245: BT: Remove whitespace (beedauchon)
1290 4244: Change web_infos period to hours (this is a bugfix,
1291 no need to change ini files)
1292 new option: enable_mlnet_redirector
1295 4243: FileTP: Clean lots of whitespaces
1296 4031: HTML: relative refs in HTML output (beedauchon)
1297 4191: Access to disk data (free space, max file name length)
1298 This is first step implmenting this, checkout the
1299 disk command for debugging.
1300 4242: IPBlock: Support guarding_full.zip
1301 4241: Fix html_mods_vd_gfx_remove
1302 4240: EDK: New option keep_downloaded_in_old_files
1305 4184: support guarding.p2p in zip/gz/bz2 format
1306 bz2 segfaults on OpenBSD, therefore disabled
1307 see notes in the patch on how to compile with MinGW
1310 4205: Improve logging with timestamps 2 (incomplete)
1311 4204: Improve logging with timestamps (incomplete)
1314 4195: GUI: Change configure options
1316 Now "./configure" compiles no GUI, "--disable-gui" is default.
1317 To use a GUI use "--enable-gui", this enables GTK2 GUI.
1319 --enable-gui=newgui2 (use GTK2 GUI)
1320 --enable-gui=newgui1 (use GTK1 newgui)
1321 --enable-gui=oldgui (use GTK1 oldgui)
1322 Options like "--disable-newgui" or "--enable-gtk2" were removed.
1325 4193: CommonGraphics : some whitespace cleanups
1326 4190: Gdstats: Fix tag.png/jpg link output
1327 4188: Overnet: Dont put our own ID in the buckets (bogeyman)
1328 -------------------------------------------------------------------------------
1329 2005/07/19: version 2.6.0 = tag release-2-6-0
1330 4175: New option html_mods_use_js_tooltips, default true
1332 4187: Update version to 2.6.0
1333 4186: SCM date for Windows / FreeBSD configure enhancement
1336 4183: HTML: Overnet/Kademlia stats improvements (beedauchon)
1337 4118: Solve memory leak in Overnet/Kademlia
1338 4182: Get CVS date in configure for OpenBSD
1339 4175: HTML: Add Multiline File Information in download table
1343 4181: EDK: Control identified versions
1344 4180: EDK: Files copied to incoming dir for sharing do not
1345 appear in upstats after hashing
1346 4179: Get CVS date in configure for FreeBSD & Mac OS X
1347 4178: Dont build GUI on "make release.mlnet.static"
1348 4177: Clear logging, first steps toward time stamps
1349 4175: HTML: Add Multiline File Information in search results
1350 4174: EDK: Re-enable source exchange with eMule clients
1351 4163: EDK: Avoid saving sources every save_options_delay
1354 4173: Clear whitespace from code
1355 4168: HTML: Graphical chunk display in vd <num> (beedauchon)
1356 4167: Gdstats: Fix corrupted pics output/improved output (beedauchon)
1359 Remove obsolete ./src/gtk/gui2 directory
1360 4165: Clean log file
1361 4164: Gnutella/G2: Update Webcache URLs
1362 4160: resize properly the names in the gtk2 gui (su_blanc)
1363 4158: EDK: Parse and display version numbers, also in GTK2 GUI (su_blanc)
1364 4114: EDK: new command "reset_stats" (Knocker)
1367 4159: Removed whitespaces (beedauchon)
1368 4156: tray icon in x11 for GTK2 GUI (su_blanc)
1369 4157: fix mlnet.pid checking at start up for GUI
1372 4153: More infos for mem_stats
1373 4146: Use lprintf_nl instead of "lprint_newline ()" or "\n" (beedauchon)
1376 4118: Improve Overnet/Kademlia logging and mem_stats output
1378 -------------------------------------------------------------------------------
1379 2005/07/05: version 2.5.30.17 = tag release-2-5-30-17
1380 4142: Remove unneeded code
1381 4141: Cleaned logging
1382 4140: New option: create_dir_mask
1383 New directories in incoming_directories are created
1385 4139: EDK: don't ask clients for non-downloading files
1388 patch posted in bug 13619:
1389 Always returns ASCII(C) locale when it use libcharset
1392 4135: Change emule_version
1393 4134: Clean core startup messages and log output
1394 4130: Print warning message for Windows users
1395 4128: Notification mail: show hash and download time
1396 4127: Add TOS support
1397 4123: First steps toward integrated user-management:
1398 new commands "remove_user" and "users",
1399 only "admin" is allowed to kill the core
1400 HTML interface to setup users (Options, Users)
1403 4125: Some configure.in fixes if libpng is misssing in libgd
1406 4122: EDK: "server <met>" command now responds with a clearer answer (Knocker)
1407 4121: EDK: Dont remove prefered server if server_users < min_users_on_server
1409 4120: EDK: send emule_version to servers (Knocker)
1410 4083: new build target: release.mlnet.distri
1411 it contains both the dynamic and the static linked core
1414 4115: sort output of "links" in alphabetically order (Knocker)
1417 4109: EDK: Improve update_server_list
1418 4104: Check accessibility of used directories on core startup
1419 4101: Telnet: Show BT hash in vd <num>
1420 4099: Automatically insert version number in Windows ressource file
1421 4093: Add Buildinfo button to HTML, Help+
1422 4092: Add Razorback-Stats and Bitzi links to upstats
1423 4091: EDK: Some progress on the cancel bug
1424 4090: Overnet: Add stats to mem_stats and code cleanup
1425 4089: gdstats: Update second graph correctly
1426 4085: change download priority to keep started download rolling
1427 4071: Code cleanup: Replace lprintf_newline with "\n"
1428 -------------------------------------------------------------------------------
1429 2005/06/06: version 2.5.30.16 = tag release-2-5-30-16
1430 4070: Exit core on startup if a port is already used
1431 4079: mlnet server id fix
1434 4067: BT: Fix multifile commit
1435 (updated to create dirs with rights 777)
1436 4063: HTML: Some improvements (beedauchon)
1439 3984: Make filename_conversions option implementation safe
1440 4042: Avoid sharing temp dir
1441 4046: Hotfix: Circumvent max_hard_download_rate/2 bug
1442 4051: mailer:encode subject and include a time zone
1443 4055: Allow canceling of ed2k downloads if G2 is enabled
1444 4056: Close all files if core receives SIGHUP
1445 4057: Hotfix: Close files if an upload slots gets free
1446 4058: Remove donkey_devel code, it is outdated
1447 4060: Extend core startup message
1448 4061: Block system signals during core startup
1451 4040: EDK: Do not truncate shared files
1452 4043: Avoid locking shared files
1453 4044: G2: Enable dllink support for servers and friends
1454 4045: Remove command "-daemon", use 'mlnet > /dev/null 2>&1 &' instead
1455 4050: Sync with Amorphous rev325
1458 4033: Fix "make clean" on MinGW/Cygwin (updated 2005/05/28)
1459 4034: HTML: sources command has HTML output now (from beedauchon)
1461 Replaced docs/http-1.1.txt and docs/uri.txt with links
1462 to the original files.
1464 Remove big, dcgui, giFT, hwd, lopster and small from ./icons
1465 GTK old- and newgui and GTK2 GUI compile without those dirs.
1467 Only these sets are used:
1468 ./config/Makefile.in: ICONS_CHOICE=icons/rsvg
1469 ./config/Makefile.in: ICONS_CHOICE=icons/tux
1470 ./config/Makefile.in: ICONS_CHOICE=icons/kde
1473 3985: Create pid file
1474 3991: Respect $MLDONKEY_DIR
1475 3993: Enable signal handling on MinGW
1476 3996: EDK: Support auxports
1477 4017: Fix use_tags compile
1478 4018: New EDK clients: Emule Plus + Hydranode
1479 4023: Enhance buildinfo
1480 4025: Enable sha1new on Solaris and Windows
1481 4026: Remove all servers with "rem all" works now
1482 4027: Fix jpg viewing with gdstats
1483 4028: Remove gd generated files (cosmetic code update 2005/05/19)
1484 4029: EDK: Print warning if enable_servers false
1487 3979: Show CVS date in CURRENT_RELEASE
1488 3971: Send sources availability
1489 3977: html_mods: fix server listing when a net is disabled
1490 3978: properly sort availability in the GTK2 GUI
1491 * Patch from beedauchon adds html support to donkeys
1492 new_print_mod_stats if emule mods statistics are disabled.
1493 * Patch from beedauchon adds html support to the command gstats.
1494 * Patch from beedauchon adds html support to the command ov/kad_stats.
1495 * Patch from beedauchon adds some fixes to the html output
1496 of the networks command.
1497 -------------------------------------------------------------------------------
1498 2005/05/02: version 2.5.30.15 = tag release-2-5-30-15
1499 This version shares the same code as Amorphous revision 304.
1501 3963: Remove Audiogalaxy code
1502 3964: Remove obsolete Cymes entries
1503 3970: Print web_infos (from beedauchon)
1504 3972: bug fixes for the GTK2 GUI
1505 3973: Support for Overnet contact.dat (from beedauchon)
1506 3974: HTML: RSS support (from beedauchon)
1507 3975: EDK: Fix for sending shares to server
1508 3976: Remove obsolete Ares code
1509 -------------------------------------------------------------------------------
1511 3956: Set utf-8 character encoding in notification mails
1512 3952: Print glibc version in buildinfo
1513 3969: Sync with Amorphous rev293
1515 * A little cleanup for debug output.
1517 * Patch from beedauchon fixes transparency issues with
1519 ---------------------------------------------------------------------
1520 2005/04/26: spiralvoice (version 2.5.30.14 = tag release-2-5-30-14)
1522 3908: Split patch 3900: Vorbis file support
1523 3949: Some improvements for graphical stats
1524 3950: bug fixes for the gtk2 GUI
1525 3951: servers enhancement
1526 ---------------------------------------------------------------------
1527 2005/04/25: spiralvoice (version 2.5.30.13 = tag release-2-5-30-13)
1528 This version shares the same code as Amorphous revision 286.
1530 3947: More build fixes for sha1new on FreeBSD
1531 ---------------------------------------------------------------------
1532 2005/04/24: spiralvoice (version 2.5.30.12 = tag release-2-5-30-12)
1534 3943: Fix building without gd
1535 3944: Sync with Amorphous 284
1536 * lots of whitespace cleanups
1537 * Some cleanups in configure.in .
1538 * Corrected that --enable-gd is the default
1539 ---------------------------------------------------------------------
1540 2005/04/24: spiralvoice (version 2.5.30.11 = tag release-2-5-30-11)
1542 3942: Fix for Gnutella/G2/Fasttrack dllink handling
1543 ---------------------------------------------------------------------
1544 2005/04/24: spiralvoice (version 2.5.30.10 = tag release-2-5-30-10)
1546 3938: Print cwd on core start to help users finding their ini files
1547 3939: gd generated bandwith-usage graphic in the web-ui
1548 3941: Sync with Amorphous rev280/281
1549 * Little fix for the buildsystem for commonGraphics.
1550 * Fix the sha1new configure-test for FreeBSD.
1551 * I hope, that i fixed problems with linking libiconv for FreeBSD.
1552 * Change the iconv check a bit. Users with unusual locations
1553 should use --with-libiconv-prefix with configure. Still
1554 seems not to work right on FreeBSD.
1555 * Fix sha1new for FreeBSD for sure now.
1557 ---------------------------------------------------------------------
1558 2005/04/23: spiralvoice (version 2.5.30.9 = tag release-2-5-30-9)
1560 3919: Move users/passwords from downloads.ini to users.ini which has rights 600
1561 3930: Build fixes for FreeBSD & OpenBSD (some more patches)
1562 3935: Core did not create incoming on first start
1563 3937: Whitespace cleanup of configure --help
1564 ---------------------------------------------------------------------
1565 2005/04/23: spiralvoice (version 2.5.30.8 = tag release-2-5-30-8)
1567 Mozilla MLdonkey Protocol Handler updated to version 1.5
1568 3924: More bt peer ids + clean up networks cmd in html (table sorts properly)
1569 3926: mac osx gtk2 gui building
1570 3930: Build fixes for FreeBSD & OpenBSD
1571 3931: Prevent DDOSing fm2.imesh.com
1572 3932: Print warning if core cant do DNS lookups
1573 ---------------------------------------------------------------------
1574 2005/04/20: spiralvoice (version 2.5.30.7 = 2.6pre19, tag release-2-5-30-7)
1576 3915: Show only searchable networks in HTML, search
1577 3916: Change Opennap servers_list_url to a working one
1578 3918: HTML: Print network capabilities table
1579 3921: Change Fasttrack temp file names
1580 3922: Re-enable use of ft:// links to add Fasttrack servers
1581 ---------------------------------------------------------------------
1582 2005/04/13: spiralvoice (version 2.5.30.6 = 2.6pre18, tag release-2-5-30-6)
1584 * Add an headder-file to charsetstubs.c so it compiles on
1585 certain platforms. This fixes savannah bug #12683.
1587 To compile on FreeBSD and OpenBSD link these files:
1589 /usr/local/include/libcharset.h
1590 /usr/local/include/localcharset.h
1591 /usr/local/include/iconv.h
1593 to /usr/include and /usr/local/lib/libcharset* to /usr/lib.
1594 ---------------------------------------------------------------------
1596 2005/04/13: spiralvoice (version 2.5.30.5 = 2.6pre17, tag release-2-5-30-5)
1598 3894: New build targets: release.utils.shared & release.utils.static
1599 3895: Amorphous patches from SVN revision 259
1600 * If using iconv in an libiconv, check for libcharset.h and
1601 use it, if it is not present use localcharset.h . This
1602 should fix compiling on some systems.
1603 * Lower AC_PREREQ to 2.53 (debian wood needs that).
1604 * Some whitespace fixing for configure --help .
1605 * Use -mno-cygwin for cc when --enable-mingw is used. But it
1606 seems like it does not prevent the freezing we know from
1607 cygwin compiled cores.
1608 * Use the present fd for getsize64 in unix32. This should
1609 fix multi-files for bt in win32, as win32 only allows one
1610 fd per file because of the default locking behaviour.
1611 * Ignore exceptions from utimes, as in win32 the default
1612 locking behaviour prevents them.
1614 3896: BT support for file_started_cmd
1615 3901: Change HTML headers from iso-8859-1 to UTF-8
1616 3902: Amorphous patches from SVN revision 264
1617 * Add -mno-cygwin to -ccopt for ocaml. Seems not to fix
1618 --enable-mingw either.
1619 * Clean up canonize_basename, now that we have charset
1620 conversion. Now we should be able to have most chars in
1621 filenames if the locale is set right.
1622 * When shorten-ing names, just use Charset.to_utf8 instead
1623 of String.excaped . Now non-ASCII chars should show up
1624 nicely in web-ui and telnet-ui. The conversion should be
1625 done when these strings enter the core, but that would be
1627 * Remove an Charset.to_locale that shouldn't be there.
1629 3903: Remove some log messages
1630 3904: Format "vd <num>" output in telnet to have md4 hashes back
1631 3905: Prevent crash on start when wrong system date is set
1632 3906: Fix GTK1 GUI compile (was broken since patch 3867)
1633 3907: Fix UTF-8 stuff
1634 3909: Some cosmetical stuff from Amorphous rev 266
1635 ---------------------------------------------------------------------
1637 2005/04/07: spiralvoice (version 2.5.30-4 = 2.6pre16, tag release-2-5-30-4)
1640 3887: Syncing Savannah CVS with Amorphous SVN
1641 * Applied savannah patch #3867 with small modifications, so
1642 it builds on systems that don't have libiconv but have
1643 iconv() in libc (i hope it still works on systems with
1644 libiconv :) ) and so that the gui protocol version 30
1646 - new gui protocol version 31 (see guiProto.ml) fixes
1647 savannah bug #11988 : GUI-Protocol doesn't send hashes
1648 for files not from the donkey-network
1649 - fix for savannah bug #12390 : GTK2 GUI configuration
1651 - bt shares now show up under shares
1652 - gtk2-gui: fix some bugs in text display (while using
1654 - gtk2-gui: fix upload/download rate of clients
1655 - gtk2-gui: md4 is replaced by uids everywhere (downloads,
1657 * Patch from beedauchon on irc fixes that gnutella and
1658 gnutella2 options had the same prefix.
1659 * Corrected debug-output in http_client.ml form last commit.
1660 * Little debug-log cleanup.
1661 * Fixed savannah bug #12348 gnutella (and related networks)
1662 accumulated more and more ultrapeers (servers) during
1663 runtime and did not forget them, so memory usage growed
1665 ---------------------------------------------------------------------
1667 2005/04/04: spiralvoice (version 2.5.30-3 = 2.6pre15, tag release-2-5-30-3)
1669 3883: Fix compile errors in GTK1 GUIs due to patch #3867
1670 ---------------------------------------------------------------------
1672 2005/04/04: spiralvoice (version 2.5.30-2 = 2.6pre14, tag release-2-5-30-2)
1674 3864: html-interface: slightly easier renaming
1675 3867: bug fixes for the new GTK2 GUI
1677 3873: Syncing Amorphous 2-5-30ac with 2-5-30-1
1678 * Now really fixed the infinite loop in the sourcemanagement.
1679 * The check for the version of ocaml in the configure file
1680 should be fixed now. Now 3.08.3* and 3.08.2* (for mac only
1681 3.08.2+4 to +8) are recognized. If needed 3.08.3 should be
1682 downloaded correctly.
1683 * Some debug-output cleaning.
1684 * Updated warning message for old mldonkey clients, they
1685 should at least upgrade to 16v.
1686 * Removed option master_server_min_users as it was not used
1689 3874: Extend vd command with parameters
1690 * add telnet commands
1694 shows only chosen downloads
1695 tip: use aliases vdd -> vd downloading
1699 3876: Support subrelease in configure.in
1700 3877: Identify more bt peer ids (client software)
1701 3882: Decode http-header-name location case-insensitive
1702 ---------------------------------------------------------------------
1704 2005/03/20: spiralvoice (version 2.5.30-1 = 2.6pre13, tag release-2-5-30-1)
1706 This release shares the same code as Amorphous SVN release 2-5-30ab
1707 except the fact is needs Ocaml 3.08.3
1709 3792 : EDK/HTML: More readable uptime in cs
1710 3795 : Updated files for bugs building GTK2 GUI, GTK1 newgui and GTK1 oldgui
1711 * To build GTK1 newgui: ./configure
1712 To build GTK1 oldgui: ./configure --disable-newgui
1713 To build GTK2 GUI: ./configure --enable-gtk2
1714 lablgtk-1.2.7 and lablgtk2-2.4.0 can both be installed at the same time.
1716 3816 : New URLs in FakeCheck. Corrected Bitzi URL
1717 3573 : Allows for aliased commands in driverCommands
1718 3822 : Fix for completed files appear multiple times in upstats
1721 3828 : Opennap compiles again
1722 * this does not mean the module actually works;-)
1724 3830 : Review build process
1725 * Ocaml 3.08.3 is now required to build MLDonkey
1726 * Removed config/Makefile.config.i?86.in files. If you want
1727 to build for an arch that is not the build-machine then
1728 use for example ./configure --host=i586-pc-linux-gnu .
1729 * Added the opt-binaries from utils to make clean.
1730 * Added configure option --enable-debug .
1731 * Removed the configure options for directconnect and
1732 audiogalaxy, any developer wo wants to work on them can
1733 add them again and nobody else should use them.
1735 3791 : Syncing 2.5.30 and Amorphous 2.5.30aa
1737 * Adapted a change to the command "sources" from savannah
1738 patch #3621 that had a new command "tsources". "sources"
1739 now prints it's information in a much more compact table.
1740 * Savannah patch #3304 has UTF 8 encoding for strings from
1742 * Changed so redirectors (gwebcaches) for gnutella/g2 are
1743 only contacted once a day. This is no good solution, but
1744 it should prevent us from harming the network.
1745 * Prevent active_udp_queue in g2 from growing over length
1746 100 and eating all memory (this is a workaround and
1747 should be fixed for real someday).
1748 * Now ./configure checks for autoconf259 and autoconf-2.59
1749 and uses these instead of autoconf. AC_PREREQ in
1750 configure.in is now set to 2.59 instead of 2.5 .
1751 * The default port for the gift gui is now 0, to disable it,
1752 because it did not ask for authentication.
1753 ---------------------------------------------------------------------
1755 2005/03/02: spiralvoice (version 2.5.30 = 2.6pre12, tag release-2-5-30)
1757 This version solves the serious file corruption bug in version 2-5-29
1758 ---------------------------------------------------------------------
1759 These patches were applied to 2-5-29 by b8_bavard without mentioning
1762 3357: BT: use config option for hardcoded TCP-read-timeout
1763 3326: html_mods: Show sources info in vd # output again
1764 (bt_vd_soft.diff + html_print_sources.diff)
1765 -------------------------------------------------------------------
1766 This patch was applied to 2-5-28-1 by spiralvoice without mentioning
1769 3672: Let mldonkey upload (complete files) work with Low ID clients
1770 -------------------------------------------------------------------
1772 These patches are part of release 2.5.30:
1774 3676: BT/fileTP HTTP header check (header_checks-fix.diff)
1775 3551: new gtk2 gui (3551_1_29.patch.gz, rsvg_icons_set.patch.gz)
1776 3308: Optionally skip (queued/paused) files in html vd display
1777 3461: [EDK] Fix some bugs (3461_29.patch, tweak_commonSources.2-5-28-fixed.patch)
1778 3476: Fix bug in friends file list
1779 3481: Let configure fail if Ocaml and wget are not available
1780 3484: Add vd link for nocheckboxes html interface (3484_2.patch)
1781 3490: Some leftovers from patch_pack 2-5-28h
1782 (lowid_29.patch, cleanups_small-fixes.patch, 3490_2.patch)
1783 3491: Some stuff for config/Makefile.config.i?86.in
1784 3494: BT: tracker interval fixed again (this patch replaces
1785 patch 3447 from 2-5-28-1, 3494_29.patch)
1786 3522: BT guarding.p2p support
1787 3575: Detect if config/ directory is absent during configure
1788 3603: Error in mldonkey-design.tex
1789 3604: Fix for bug #11394 - HTTP redirection
1790 3608: EDK: Higher default for walker_server_lifetime
1791 3609: New extensions for video search (extensions28.patch)
1792 3610: Kademlia nodes are collected even if Kademlia is disabled
1793 3615: Small typo, clean logfile
1794 (log.patch, log.patch (for Overnet messages, new in 2-5-28p,
1795 typo.patch, 3615_4_29, replaces edkudp_messages.patch,
1796 3615_5_29, replaces compatableclient.patch)
1797 3616: fix for too much source-queries to servers for 2.5.28i
1799 3620: Donkey guarding.p2p support (3620_29.patch)
1800 3621: new command "tsources" prints table of sources
1801 3622: we should only ask for sources if we need_new_sources (3622_29.patch)
1802 3627: Adding EDK servers with edk://server did not work
1803 3631: Solve configure problem on Mac - fixes bug 11365
1804 3634: This patch addes RazorBack's file history link to interface
1805 3637: Fix for MacOS Orphaned File Descriptor Bug
1806 3648: HTML: Display sharing strategies in Options, Shares
1807 3652: TELNET: Display search result summary
1808 3653: Handle HTML error 304 in http_client.ml (3653_29.patch)
1809 3655: Bugfix for multiple sourceexchanges with the same peer
1811 3656: Parse eMules ipfilter.dat for use in IP blocking function
1812 3672: Let mldonkey upload (complete files) work with Low ID clients
1813 3675: EDK: keep_cancelled_in_old_files works again
1814 3677: Fix for bug #11686 - fileTP cancel
1815 3680: get more infos on servers per UDP
1816 3685: fileTP FTP quick fix
1817 3688: Avoid Exception Pervasives.Exit in QueryFileReq
1818 3707: Use Ocaml 3.08.2 instead of 3.08.0 when no Ocaml is installed yet
1819 3715: Some care for options
1820 3719: New command: buildinfo (3719.patch, buildinfo2.patch, 3719_3.patch)
1821 3721: HTML: Remove filewatcher.org from Search function
1822 3725: EDK: 15 new eMule mods
1823 3726: EDK: Better recognition for Shareaza clients
1824 3728: EDK: vd <num> source score display bugfix
1825 3734: Configurable socket option so_keepalive (3734_29.patch)
1826 3737: FT/GT: Canceling download works again (3737_29.patch)
1827 3744: bugfix #11362 and some description cleanup
1828 3754: Bitzi lookup works again in Search results interface (3754_29.patch)
1829 3157: Send core update message to "new mldonkey" (3157_29.patch)
1830 3681: remove guarding block of indirect sources
1831 3717: improvement of patch 3672 (additonally bugfix for wrong Hi/Lo-ID in serverlist)
1832 3773: Solve compile bug in tools (dp500.patch, make_torrent.patch)
1833 3673: do not send the entire list of shadred file to servers every 5 minutes
1835 3291: Fix for bug 9996 - Missing Date Header in Emails
1836 (fixed problems with 3291_29.patch)
1837 3736: Bugfix for Chunks-Randomizing and LowID recognition on inbound connections
1838 3722: Enhancements to the sourceexchange and some minor ED2K bugfixes (3722_29.patch)
1839 3735: Sourcemanagement revisited (3735_29.patch)
1840 3776: Fix for file corruption in CVS 2-5-29
1841 3777: Lots of backported stuff from Amorphous branch 205
1842 (backport.patch, log.patch)
1844 -------------------------------------------------------------------
1846 UPDATE (2005/02/20): branch 2-5-28 was updated, to check out use "-r release-2-5-28-1"
1848 A SERIOUS bug is in 2.5.29, don't use it, version 2.5.30 will appear soon !
1849 (if you do a checkout/update , use tag 'release-2-5.28' instead)
1851 2004/10/26: Fabrice (version 2.5.29 = 2.6pre11, tag release-2-5-29)
1852 - Bittorrent: files should be shared even after commit.
1853 - Removed some options:
1854 * "incoming_directory", replaced by "shared_directories", with
1855 strategy "incoming_files" (for downloaded files) and
1856 "incoming_directories" (for downloaded directories on Bittorrent).
1857 * For networks, "network_options_prefix" and "commit_in_subdir".
1860 - Measure latencies between clients and send them to redirectors:
1861 * On TCP connections
1863 * Edonkey Server Ping/Pong
1864 * Overnet/Kademlia clients Connect/ConnectReply
1865 * Fasttrack Supernode Ping/Pong
1868 - Many changes and patches applied, labeled as UNSTABLE until further
1870 - Applied Savannah patches: #3321 (print_sources), #3338 (BT-quit),
1871 #3341 (BT-numwant), #3352 (GUI-GetVersion), #3356 (BT-showfile),
1872 #3363 (gzip-0len), #3407 (BT-referer), #3408 (complete),
1873 #3409 (download-sort), #3411 (setoptions), #3412 (BT-delay),
1874 #3413 (BT-messages), #3414 (BT-latepeerid), #3415 (ED2K-ip),
1875 #3420 (BT-chooser), #3421 (BT-events), #3422 (BT-reshare),
1876 #3423 (BT-manualstop), #3425 (BT-latepeerid2), #3427 (logchats),
1877 #3428 (BT-delay2), #3429 (BT-handler), #3430 (BT-verify),
1878 #3435 (BT-assert1), #3436 (BT-parsehead), #3438 (ED2K-proto),
1879 #3439 (swarm2), #3442 (kad-options), #3443 (log)
1880 - Default is now Swarming2.
1883 - Gnutella/Gnutella2: deflate_connections works
1887 * Description of shared files is saved on disk during execution.
1888 * Computed UIDs, Md4s and tiger-trees are stored in shared_files.ini
1891 * Experimental ultrapeer mode for local experimentations (will not
1892 work on the Fasttrack network).
1896 * Start download without the torrent, when enough information is known.
1900 * Clean protocol specification
1904 - Gnutella/Gnutella2:
1905 * Implemented basic ultrapeer (without Bloom filters)
1906 * Implemented HTTP upload
1907 * Implemented TigerTree verification
1911 * chunk*.tmp are always removed
1912 - Applied patches: #3305 (config gtk), #3306 (mlgui align), #3307 (clean),
1913 #3313 (ft), #3317 (bt softs), #3319 (floats),
1915 2004/08/18: Fabrice (version 2.5.28 = 2.6pre10, tag release-2-5-28)
1916 - Tested CommonSwarming2 with Edonkey and BT (should also work with
1920 - Applied patches: #3279 (cygwin), #3288 (aclocal), #3291 (maildate),
1921 #3292 (no gtk-config), #3554 (sharedbytes), #3561 (htmlpref),
1926 * CommonSwarming: one bug causing BAD WRITE, and one bug causing bad
1927 selection of the block to download first.
1929 * New "merge f1 f2" command to declare that data from file f2 should be
1930 saved in file f1. Not that all the data already downloaded to f2 is
1935 * DriverCommands: add_user shouldn't raise exception anymore (bug #9990)
1939 * DonkeyOptions: compute_md4_delay forced above 0.1 (bug #8812)
1940 * CommonNetwork: use Url.decode on urls
1941 * Http_client: correct Host header (bug #8705)
1942 - Applied patch #2974 (wget)
1943 - CommonSwarming2: new implementation for multi-network swarming (not
1944 working yet). Not used anyway unless -enable-swarming2 is specified.
1946 2004/08/10: Fabrice (version 2.5.27 = 2.6pre9, tag release-2-5-27)
1947 - Applied patch #3276 (gui proto 29)
1949 * CommonInteractive: Filename conversion of forbidden Windows characters
1950 before saving files (bug #9213)
1951 * MlUnix: stdout and stderr are not closed, just redirected to /dev/null
1953 * DonkeyFiles: limit upload to client to max_msg_size (bug #9818).
1954 * CommonSources: fixed bug preventing saved sources from being used
1955 (and thus previously known emule clients from being used).
1956 * CommonSwarming: save and reload chunks ages
1957 * FasttrackComplexOptions: sources are correctly loaded
1958 - Fasttack now uses module CommonHosts
1960 2004/08/09: Fabrice (version 2.5.26 = 2.6pre8, tag release-2-5-26)
1962 * GuiDecoding: bug causing deconnection for protocol 28
1963 * New Fasttrack files from giFT-Fasttrack
1964 * New option filename_conversions in downloads.ini to translate chars
1965 in names before saving files.
1966 * DonkeyClient: fixed QueueRankReq handling
1968 2004/08/09: Fabrice (version 2.5.25 = 2.6pre7, tag release-2-5-25)
1969 - Bug fixes (to be tested):
1970 * CommonSwarming: removed downloaded counter, use the file's one.
1971 Verified files should now be seen correclty after verify_chunks or
1973 * CommonInteractive: modified canonize_basename to replace chars
1974 outside 32-127 by ?. Should solve saving of CJK files on disk.
1975 * Unix32: open in read-only if EROFS is raised
1976 * DonkeyComplexOptions: force use of update_server_list variable, and
1977 check IP reachability (bug #7200). Should also fix bug #8971.
1978 * DonkeyClient: Don't ask for slot if no interesting chunk. Use
1979 good_client_rank option to put clients in "good_sources" queue.
1981 * DonkeyClient: removed "connection_ok" in query_locations to
1982 allow servers to become master (bug #7741).
1983 * DonkeyServer: new command "preferred" to choose preferred servers,
1984 that will become masters immediatly and with priority if connected
1985 (which should happen automatically during the walking process).
1987 * GnutellaServers: added gnutella2_needed variable to decide when to
1988 keep a connection in Gnutella/Gnutella2 (bug #9697).
1989 * GnutellaRedirector: set delay between reconnections to redirector
1990 to 1 hour. (bug #9686)
1991 * CommonHosts: added option to limit the number of known hosts
1992 in Gnutella "max_known_hosts" (default 1000) (bug #8416)
1993 * configure.in: changed REQUIRED_OCAML to 3.08 (bug #9939)
1994 * DonkeyOvernet: searches are removed after 5 minutes.
1995 - Applied patch #3274 (ocaml3.08)
1998 - Applied patches: #3269 (int64), #3266 (mc), #3267 (ocaml3.08)
2000 2004/08/05: Fabrice (version 2.5.24 = 2.6pre6, tag release-2-5-24)
2002 * CommonSwarming: remove "double the downloaded size" of downloads.
2003 * DonkeyComplexOptions: prevents saving options before loading them,
2004 which used to destroy the file_sources.ini and shared_files_new.ini
2006 * CommonSources: check_time discarded the real time.
2007 * DonkeyOvernet: enabling Overnet at runtime wouldn't start it.
2008 * DonkeyShare: downloaded files should be shared immediatly.
2009 - Applied patches: #3264 (emule mods)
2010 - Overnet/Kademlia: added prebuckets. Number of peers limited to 20 per
2011 bucket and 100 per prebucket. Boot peers addresses from redirector.
2013 2004/08/04: Fabrice (version 2.5.23 = 2.6pre5, tag release-2-5-23)
2014 - ocaml-3.08 is required to compile now.
2015 - Overnet and Emule-Kademlia share the same (partial) implementation:
2016 * Use global options "enable_overnet", "enable_kademlia" and
2017 "enable_servers" to choose which modes you want to use.
2018 * See the options for Kademlia and Overnet in donkey.ini.
2019 * Use kad_ and ov_ prefixes to call commands for these networks
2020 ("kad_buckets" gives the current connection status, "kad_boots"
2021 gives the number of known peers to bootstrap, "kad_stats" gives
2022 the current status of searches, "kad_store" for what is published
2024 * Currently working:
2025 * Search for keywords (normal searches)
2026 * Search for files (localisation of sources)
2027 * Replies to external searches
2030 - Applied Savannah patches: #3249 (no udp), #3250 (mem_stats),
2031 #3251 (verify_chunks)
2034 - Applied patches: #3053 (configure), #3064 (bt share), #3146 (ed2k servers),
2035 #3160 (emule mods), #3183 (config saved), #3235 (zlib), #3242 (Makefile),
2036 #3245 (bt nuploaders), #3246 (bt cookies)
2037 - Added src/networks/donkey/donkeyProtoKademlia.ml. Rewritting DonkeyOvernet
2038 to fix the implementation of Overnet, and to make it usable for Kademlia.
2041 - CommonSwarming: re-implemented chunk duplication.
2043 2004/07/29: Fabrice (version 2.5.22 = 2.6pre4, tag release-2-5-22)
2044 - Fixed a bug in number of sources computation.
2047 - New subtree src/gtk2 to compile the GUI with gtk2. You need lablgtk2
2048 installed, and use "./configure --enable-gtk2" to enable. Some things
2049 are broken, such as availability display (but when is that pixmap
2051 - New message InterestedInSources in the GUI protocol, to save more
2052 bandwidth by sending sources information only when asked.
2055 - Applied Savannah patches: #3165 (ipset), #3166 (mozilla height),
2056 #3178 (BT compatct). #3184 (hightime)
2060 - Applied Savannah patch: #3162
2064 * New message InterestedInSources
2065 * Fields file_all_sources and file_active_sources correct for eDonkey
2066 plugin. Should save some bw, mem and cpu in the GUI, when only this
2067 info needs to be displayed.
2070 - Major changes in search results management:
2071 * New option 'save_results' (default is 0)
2072 0 : results are not saved between sessions
2073 1 : results first appearance are saved between sessions
2074 2 : full results are saved
2075 * Local search is now always available. A structure to search old
2076 results (in the same session, and in former sessions if
2077 save_results = 2) is built for 5 minutes, so the memory should
2078 be reclaimed 6 minutes after the last local search.
2079 * All results for all networks are stored on disk, not in memory.
2080 * The 's' command output displays a 'N' for new results, i.e. results
2081 that never appeared before that search.
2082 * New option 'special_queries' in 'searches.ini' defining
2083 abbreviations for search arguments (eg "-movies" means
2084 "avi -minsize 650000000 -maxsize 735000000") that can be
2085 used with 's' and 'ls': "s -movies dvdrip fr"
2086 - Command 'mem_stats' now takes an argument (0 for normal, 1 for more
2088 - Applied patches: #3120 (html), #3124 (ed2khash)
2091 - Fixed bug adding unwanted friends
2094 - Added RSS loading via option web_infos, with command "rss" to print them.
2095 - Applied patches from Savannah: #3005 (networks), #3007 (printf2),
2096 #3008, #3016 (solaris), #3017 (log),#3023 (telnet), #3024 (log),
2097 #3028 (donkey-ip), #3029 (firewalled), #3030 (log),
2098 #3031 (ft users), #3033 (chmod), #3039 (Makefiles),
2099 #3046 (telnet), #3065 (misc), #3067 (bsd), #3096 (wincomp),
2100 #3100 (force dl), #3070 (upload)
2102 2004/05/05: Fabrice (version 2.5.21 = 2.6pre3, tag release-2-5-21)
2103 - DonkeyClient: re-implemented indirect connections that were lost since
2105 - For some reason, download seems to be limited to max_hard_download_rate/2.
2106 Try to increase this option until a fix is found.
2109 - Applied patches: disconnect (Spiralvoice)
2110 - Applied Savannah patches: #3003, #2988
2111 - Fixed bug preventing connections with Overnet clients.
2112 - New command 'activity'
2114 2004/05/03: Fabrice (version 2.5.19 = 2.6pre1, tag release-2-5-19)
2115 - Applied patches from Savannah: #3002 (cs_total), #3001 (newgui_csources),
2116 #2993 (guiprio), #2988 (cs_html), #2983 (typo18),
2117 #2978 (shorten results), #2975 (title opfile), #2966 (telnet stats),
2118 #2965 (min users), #2964 (htmlmod), #2963 (lugdu_share),
2119 #2942 (emule mod), #2941 (options)
2120 * #2952 is postponed until I understand if it is already included in the
2121 Emule better compatibility work done.
2122 * #2974 is postponed for verification of compatibility with other platforms
2125 - Fixed bug causing lost of partially downloaded chunks.
2126 - Fixed bug in recover_bytes, and added new Edonkey command
2127 'recover_bytes <file_num>' to recover files at a byte
2128 level (i.e. partially downloaded chunks)
2131 - Improved Emule compatibility:
2132 * Send 'emule_miscoptions1' on Connect, store emule features
2133 * Receive EmuleCompressedPart messages (if Zlib)
2134 * Receive SourceExchanges messages version 2
2135 * Receive QueryFile messages containing QueryChunksReplyReq
2136 * Send QueryFile messages containing QueryChunksReplyReq
2137 * Send EmuleRequestSourcesReq even for small files
2138 * Send QueryChunksReplyReq only if chunks not known
2139 * Send JoinSlotReq with md4
2142 - DonkeyPandora: print packets and check encoding/decoding of
2143 Edonkey packets using traces captured by tcpdump and treated
2146 2004/04/25: Fabrice (version 2.5.19, tag release-2-5-19)
2147 - Hardcoded size packet_frame_size to 1 in tcpBufferSocket.ml, so
2148 bw-management should be the same as in 2.5.16
2151 - Memory leak bug found in the bandwidth management. Udp packets are not
2152 sent because all the upload bandwidth is used. Partially fixed by
2153 limiting the size of the queue of packets.
2156 - Applied patches from Habi
2158 2004/04/16: Fabrice (version 2.5.18, tag release-2-5-18)
2159 - Fixed bug solved by patch #2937
2160 - DonkeyInteractive: new command 'set_brothers' to associate a list of
2161 files as probably colocated.
2162 - CommonSources: everything should work now.
2165 - CommonSources: the implementation seems correct and enough efficient,
2166 still missing the limitation on the number of sources.
2167 - CommonSwarming: better handling of the 'last_seen' field
2170 - Applied Savannah patches: #2928 (already downloaded),
2171 #2861 (useless options), #2852 (typo), #2915 (avoid getpeername),
2172 #2911 (bt log), #2907 (html prio), #2896 (autoconf),
2173 #2872 (voo html), #2871 (clean servers), #2866 (autorel),
2176 - DonkeyNeighbours: try to use semantic links to find new sources for
2177 files among known sources. Send hit-ratio to redirector to gather
2181 - CommonGlobals: only execute 'do_at_exit' in the main process, not
2182 in the forked ones (should solve bug #7738).
2185 - CommonSwarming: print an error message instead of pausing a file. Still
2186 to find the origin of the error message.
2187 - Bandwidth management has changed a bit, but without great success...
2190 - Safer options-saving at exit: close all the sockets to prevent "not
2191 enough file descriptors" error and remove a file called
2192 "config_files_space.tmp" to free 'config_files_security_space' megabytes
2194 - Applied patches from Savannah: #2844(share), #2846(bt)
2197 - Applied patches from Savannah: #2832 (telnet_max_name_len),
2198 #2833 (filetp), #2620, #2834 (mingw), #2836 (guardian_p2p url),
2199 #2837 (html), #2840 (overnet), #2841 (localtime)
2202 - Applied patches from Savannah: #2792 (doc), #2805 (comestic)
2203 - PClink for DP500: better handling of long filenames to prevent
2204 freezing the player.
2207 - Applied some patches for Solaris
2209 2004/03/17: Fabrice (version 2.5.17, tag release-2-5-17)
2210 - TcpBufferedSocket: new option 'copy_read_buffer', every byte downloaded
2211 from the network is copied twice, so more CPU used, but maybe better
2212 network performances.
2213 - Donkey plugin: code clean-up to use CommonSwarming. Some features are
2214 now disabled, such as "reliability" until they are implemented in
2215 CommonSwarming (and so, shared by other plugins).
2218 - New function 'CommonFile.recover_bytes' to recover files using non-zero
2219 bytes interval written in the file. New associated option
2220 'max_recover_gap' to indicate how many consecutive zeroes in
2221 the file between non-zero bytes should still be considered as part of
2222 a downloaded segment.
2225 - IP: fixed option 'allow_local_network'
2227 * New GUI protocol 26 with new format for CoreProtocol adding
2228 the max known opcodes for to_gui and from_gui messages.
2229 * The GUI can now receives unknown messages without breaking the
2233 - Applied patches: #2760, #2766, #2767, #2768, #2773
2236 - Applied patch backchanges.patch (HighTime) for BT plugin
2238 2004/03/07: Fabrice (version 2.5.16, tag release-2-5-16)
2240 #2750 (blocking_updated2), #2753 (bug 2586)
2241 #2751 (get_range) #2754 (depend_mingw)
2242 #2752 (sourcesanitize)
2244 2004/03/07: Fabrice (version 2.5.15, tag release-2-5-15)
2245 - Applied patches #2755 (joinqueuemd4), #2866 (bttt), #2867 (buf_str)
2248 2004/03/06: Fabrice (version 2.5.14, tag release-2-5-14)
2249 - Http_server: replies are filled in the handler and sent by the server
2250 (not by the handler anymore). HEAD/GET requests should be treated
2252 - New URL "http://http_ip:http_port/preview_download?q=file_num" where
2253 "file_num" is the download number (in telnet for eg). Can be used to
2254 preview files with mplayer.
2257 - New tool "ocamlpp" used for preprocessing files with .mlt extensions.
2259 #2640, #2677 (cosmetic patches),
2260 #2686 (remove array bound error in guiDecoding),
2261 #2691 (close splash screen),
2262 #2694 (status bar in downloads),
2263 #2710 (default sharing strategy),
2265 #2724 (frame height),
2269 * New message: NetworkMessage (network, message) for network-specific
2270 GUI messages: opcode 63[2 bytes], len[4 bytes], message[len]
2271 * get_string and buf_string can store strings greater than 65536 bytes
2272 (when len = 0xffff, there is another 4-bytes integer giving the full
2274 - Fixed bug in commonHasher_c.c for files > 2 GB
2276 2004/02/17: Fabrice (version 2.5.13, tag release-2-5-13)
2277 - Applied patches #2638, #2639
2278 - New tool "subconv" to easily modify .sub and .srt subtitles files.
2280 * Files are immediatly added, without checking first their size nor
2282 - Streaming of files for Kiss DP500 Divx player, including
2283 files from temp/ and incoming/. See the dp500_ options.
2285 2004/02/16: Fabrice (version 2.5.12, tag release-2-5-12)
2286 - Applied patches #2616, #2617, #2618, #2625, #2626, #2627, #2631,
2289 * Now, "cancel" does not cancel files, files are just put in a list,
2290 and you need to type "confirm yes" to definitively cancel them.
2292 2004/02/10: Fabrice (version 2.5.11, tag release-2-5-11)
2293 - New GUI protocol 24, all times in relative-time.
2294 - Re-applied patch #2603
2295 - ./config/configure.in: select former or new implementation of sha1
2296 depending on the presence of byteswap.h and endian.h.
2297 - Applied patches #2611, #2612, #2613, #2614
2299 2004/02/09: Fabrice (version 2.5.10, tag release-2-5-10)
2300 * Applied patches sha1, #2597, #2603, #2604
2302 Gui -> Core: GetUploaders, GetPending,
2303 GetSearches, (GetSearch search_id),
2304 (ConnectClient cid), (DisconnectClient cid)
2305 Core -> Gui: (Uploaders num_list), (Pending num_list),
2306 (Search search_request)
2307 GetSearches and GetSearch allow a GUI to query for former searches and
2308 to receive the results corresponding to a particular former search.
2309 * New console command "disconnect <client_id>"
2311 * New option 'remote_shells' to define, for each hostname, which
2312 remote shell to use and with which arguments (e.g. if you want
2313 to use rsh or ssh with username@hostname or a particular port).
2314 still no password allowed...
2315 * New version of 'get_range' that accepts a 'rangex' argument to
2316 send the data without base64 encoding (works for me, but I don't
2317 know for other shells). Set the 'get_range' option to set the
2318 path of the remote get_range command, and 'range_arg' to use
2319 either 'range' or 'rangex'.
2321 2004/02/07: Fabrice (version 2.5.9, tag release-2-5-9)
2322 * Applied patches #2428, #2595, #2596
2323 * TcpBufferedSocket: 'exec_command' only creates one TcpBufferedSocket.t
2324 both for reading and writing.
2326 * Basic "remote shell" protocol (using ssh):
2327 use 'http <ssh://hostname/relative-filename>' to download the file
2328 hostname:~/relative-filename. ssh must be able to connect to the
2329 host without password exchange. The remote host must have the
2330 'get_range' utility in the PATH of ssh (use "make utils" to
2331 have 'get_range' compiled with in mldonkey). The transfer rate is
2332 not very good (30 KB/s, either because of too small
2333 tcpBufferedSocket buffers, or because of the base64 encoding).
2335 2004/02/06: Fabrice (version 2.5.8, tag release-2-5-8)
2337 * Basic FTP protocol:
2338 use 'http <ftp://url>' and 'mirror <ftp://url>'
2339 * Option 'mirrors': list of list of interchangeable url prefixes.
2341 2004/02/06: Fabrice (version 2.5.7, tag release-2-5-7)
2342 * New network 'FileTP' for simple file transfer protocols:
2343 * Basic HTTP protocol:
2344 use 'http <http://url>' to start a download.
2345 use 'mirror <file_num> <http://url>' to add a mirror.
2346 * TcpBufferedSocket: initial size of buffer now depends on the last
2347 read input. might cause problems in memory until a better cache of
2348 buffers is implemented
2350 2004/02/06: Fabrice (version 2.5.6, tag release-2-5-6)
2351 * CommonInteractive:
2352 * file_cancel: removes the file itself
2354 * new function 'destroy' to completely destroy a FD, so that it cannot
2355 be used afterwards (but it does not remove the file). Used
2356 in CommonInteractive.file_commit and CommonInteractive.file_cancel.
2357 * DonkeyInteractive: clients might get stucked if they tried to
2358 upload a file that has just been commited, since the name is not
2359 updated anymore in Unix32.rename. We need to remove the former 'file'
2360 structure and then add a new one for the shared file, thus disconnecting
2361 all the former uploaders (knowing them, they will reconnect asap :)).
2363 * Applied patches #2586, #2587, #2588
2365 2004/02/05: Fabrice (version 2.5.5, tag release-2-5-5)
2366 * Change in the version numbers, keep only 3 digits :)
2368 2004/02/04: Fabrice (version 2.5.4+8, tag release-2-5-4-8)
2370 * New version of uploaders choice.
2371 * Applied patches #2571, #2579, #2580 (is patch #2578 reversed ?)
2373 2004/02/04: Fabrice (version 2.5.4+7)
2375 * Fixed upload for seeded files, and probably some other bugs.
2377 * ?? display commands per category
2379 2004/02/03: Fabrice (version 2.5.4+6)
2380 * Applied patches #2556, #2558, #2559, #2561, #2568, #2569, #2571,
2382 * TcpBufferedSocket: event CONNECTED is sent the first time a socket
2383 is available for writting.
2385 * Gui_cdget: Updated some regexps to correctly query IMDB.
2387 * BTTracker: the tracker should work.
2388 * New internal command "torrents" to list URLs of files in
2391 2004/02/02: Fabrice (version 2.5.4+5)
2392 * New Internationnalisation format: short strings are stored for translation
2393 in ~/.mldonkey/mlnet_strings.$LANG. The new scheme allows easy
2394 translation of options descriptions and all other strings used
2395 after CommonOption. Can also be used to translate the interfaces.
2396 Unfortunately, this new scheme makes most of the former translations
2397 obsolete, but most of them have been approximately changed to the
2398 new format (see distrib/i18n/mlnet_strings.*, copy yours in
2399 ~/.mldonkey/ to check)
2401 2004/02/01/ Fabrice (version 2.5.4+4)
2402 * Applied patches #2532 (new-gui), #2535 (INSTALL.txt), #2549 (vers mesg),
2403 #2550 (minsize shared)
2405 2004/01/28: Fabrice (version 2.5.4+3)
2407 Strategies of sharing can be defined in "searches.ini" (recursive or not,
2408 min file size, extensions).
2409 * Predefined strategies:
2410 [all_files]: recursively all files > 10 KB
2411 [mp3s]: recursively .mp3 < 10 MB
2412 [avis]: recursively .avi > 500 MB
2413 [only_directory]: not recursive, all files > 10 KB
2414 * Strategy for incoming/ is now [only_directory].
2415 * Format of "shared_directories" option changed accordingly: new default
2416 directory shared/ with strategy [all_files].
2417 * CommonComplexOptions:
2418 file_state, file_age and file_size are saved for all networks in options.
2420 functions to save and load chunks and present_chunks from options.
2423 * TcpBufferedSocket:
2424 * Weak form of connection_manager, that should progressively be used to
2425 better distribute connections among networks.
2426 * Zlib Compression of connection is now done transparently.
2427 * Int32ops: removed Int32 operations. int32 should be removed as many times
2428 as possible to avoid limitations at 4GB. Bittorrent protocol does not
2429 support files > 4 GB (check new version ?)
2432 * CommonSwarming: completely rewritten. No partition anymore. Better
2433 block choice strategy. More efficient strutures.
2435 * new directories in "torrents/":
2436 * downloads/: .torrent of files being currently downloaded
2437 * tracked/: .torrent of files being currently tracked (maybe seeded)
2438 * seeded/: .torrent of files being currently seeded
2439 * mldonkey command 'compute_torrent' computes a .torrent file for a
2440 filename and put it in torrents/tracked/. The file is immediatly
2442 * mldonkey tracker can be accessed:
2443 http://ip:6881/tracker?info_hash=.... -> for the tracker
2444 http://ip:6881/filename.torrent -> to download 'filename.torrent'
2447 * ed2k_hash: new option -check <size> to compute different hashes on
2448 a generated file of size <size> KB, to test DiskFile, SparseFile and
2449 MultiFile implementations.
2451 * Open ALL files in RW mode by default, and fall back in RO mode in
2453 * New format SparseFile completely implemented.
2454 * Unix32.rename makes the Unix32.t invalid. Might cause some bugs
2455 when sharing just commited files (TO CHECK).
2457 * New EXPERIMENTAL option 'emulate_sparsefiles' in downloads.ini,
2458 to emulate sparse files on non-sparse filesystems (e.g. FAT).
2459 Currently only works for Edonkey files, and <preview> and
2460 <recover_file> won't work for them.
2463 * Fixed problem with files.ini when downloading BitTorrent files
2466 * Applied Savannah patches #2480, #2481 (emule), #2482 (old GUI)
2469 * Applied Savannah patches:
2470 #2475, #2474 (bin modes), #2479 (BT), #2473 (negative time),
2471 #2437 (force-download typo), #2423 ("links" command), #2421 (connecttime),
2472 #2417 (message 21), #2415 (LSD not banned), #2414 (old GUI),
2473 #2413 (emule tags), #2411 (emule stats), #2473 (telnet)
2474 * Applied Pango's patch: common_recover_temp
2478 * .torrent filename is specified by -torrent
2479 * New option "-split <filename>" that will split <filename> in smaller
2480 files according to a .torrent file.
2481 * Applied pause.patch
2484 * Applied upload_slots patch again
2487 * mldonkey CVS moved to berlios until savannah is back again.
2488 see https://developer.berlios.de/cvs/?group_id=610
2489 for server-details, web-CVS etc.
2492 * Applied patches from spiralvoice page: prevent_interface_close, xmule,
2493 emule_tags, upload_cnum, suxx_wap, mld_cb10, remove_challenge,
2494 upload_slots, html_gnutella2, amule
2497 * Modified "forget" command
2498 * Bittorrent: crash when commiting directories fixed
2501 * Opennap: removed redondant client_port option
2502 * Gnutella2: removed options with same values as for Gnutella
2505 * New option 'allow_local_network' to allow connections on the local
2506 network for debugging purpose.
2508 * If 'tracker_port' is not nul, a WEB server is started inside mldonkey
2509 that is used as a tracker, with url:
2510 http://YOUR-IP:<tracker_port>/tracker
2511 * New option 'shared_torrent_files', a list of pairs:
2513 ("/test_bt.torrent", "../../one_torrent_file.torrent");
2515 where the first string in the pair is the relative url on the
2516 tracker web-server http://YOUR-IP:<tracker_port>/test_bt.torrent
2517 and the second is the filename .torrent on the disk to be served.
2518 * New option 'tracked_files': a list of the filenames of the .torrent
2519 files that should be tracked.
2520 * New option 'shared_files': a list of pairs (path to .torrent file,
2521 path to corresponding shared file).
2524 * New option file_started_cmd (by default "mlprogress") used when a
2525 new download is started to display a progress popup. Set to "" to
2527 * Improved progress popup.
2530 * Added 'mlprogress <num>' program that popup a window to display the
2531 download of file <num> (thx to b8_zoggy). Not tested yet.
2534 * Applied Spiralvoice patches ban.clients, win.patch, patch_pack2c
2535 * Added option 'allow_any_command' to use ! instead of !! for
2536 arbitrary commands (false by default for security reasons)
2539 * Merged devel/ and stable/ branches for Gnutella2
2542 * Added module CommonBitzi (merge with devel version)
2545 * Updated ed2k_hash to compute Sig2dat and Bitprints. For Mac users, you can
2546 check whether bitprints with tiger-trees are correctly computed:
2547 ./ed2k_hash.byte -hash bp COPYING
2549 urn:bitprint:QI3PHA4WVH75CAL72NCNTXZE3SNHU6K3.5URJJG7REVGICNBK5UQBPFGIEO234ZJ3MX2T54I
2550 Partial 0 : 5URJJG7REVGICNBK5UQBPFGIEO234ZJ3MX2T54I
2553 * Applied patch #2399 (anti-thieves v2)
2554 * Splitted Gnutella and Gnutella2 plugins
2557 * gui_messages.ini.dutch added
2558 * Suppressed UDP frames sent by a firewalled client, causing it to be
2562 * Applied patch #2390
2563 * Added Autoconf.windows boolean
2564 * New tool 'make_torrent' generated by 'make make_torrent', that can be
2565 used to generate, print, verify and modify .torrent files.
2568 * Applied patch #2382 (mingw), #2380 (anti-thieves),
2569 #2384 (gui), #2386 (gui)
2570 * Removed client addr as string in GUI protocol 20
2573 * Unix32: create_ro = create_rw
2574 * New module BTTracker, to implement a tracker for BitTorrent.
2575 Command "compute_torrent <filename>" in console to generate
2576 the torrent file associated with filename. Not working yet.
2579 * Removed patch #1261
2580 * Applied patch #2243 (bind sockets), #2377 (mlnet.static),
2582 * Fixed compilation problem in oldgui
2583 * ED2K: send compressed ShareReq message to zlib-enabled servers.
2586 * Unix32: fixed a bug preventing the creation of a correct directory in BT
2589 * Unix32: some bug fixes which may have caused bad Sha1 computation in BT at
2593 * Applied GUI patches #2372 (renamefile), #2373 (newgui),
2594 #2374 (configwin), #2375 (im), #2376 (configure)
2595 * Applied HTML patches #2151, #2264
2599 * Removed patch #2341 (for fun :) )
2600 * Applied patch #2139 (html mod), #2371 (telnet)
2601 * Compressed connections to servers work, multiple replies to a search
2602 in one UDP packet works too.
2605 * Unix32: and yet another bug fixed in MultiFile: no more
2606 Invalid_argument("Unix.write") error
2609 * Applied patches #2341 (BT), #2354 (BT with MultiFile),
2610 #2339 (improved telnet), #2311 (Overnet [EXPERIMENTAL])
2611 BUT: is there a bug on Savannah, or is it my browser that incorrectly
2612 download patches with ", >, etc... inside ?
2613 * Fixed ed2k_hash compile error
2614 * Hardcoded emule protocol version set to 0x30, connect to Razorblack
2615 * Unix32: another bug fixed causing "really_write 0 BYTES" errors.
2618 * Bug with Unix32.read fixed (no flush).
2619 * New file type MultiFile in Unix32, created with create_multifile, to
2623 * New UDP protocol implemented:
2624 * Understand servers flags in UDP pongs
2625 * Query for and understand multiple replies in one packet
2626 * Query sources for multiple files, and understand multiple files sources
2628 * server_last_message updated correctly.
2631 * Suppressed option client_server_md4 (to correcly connect to all servers)
2632 * Copy Emule behavior for client-client connection
2633 * Send ET_COMPATIBLE flag in EmuleClientInfo with number 10
2634 * Send EmuleClientInfo as soon as Emule client is identified
2635 * Set verbose = "unk" to save unknown packets in /tmp/ directory
2638 * Applied patches: #2097, #2099, #2110 (mingw),
2639 #2111, #2193 (telnet), #2248, #2255 (XSS bug),
2640 #2268 (server zlib), #2269 (opennap napigator)
2643 * Applied patches on BT: #2135, #2158, #2247, #2254, #2256
2644 * Applied patch #2299 (files > 2 GB), #2263 (don't ban uploaders),
2645 #2202 (gnutella2 DDOS)
2646 * Gnutella/gnutella2 plugin compiled again
2649 * Modified to compile with ocaml-3.07
2650 * Started merging -devel and -stable versions
2651 * Gnutella and Gnutella2 plugins disabled
2652 * Should fix GUI protocol problems with G2GUI
2657 + By default, the new gui is built. To build the former one, run
2658 ./configure -disable-newgui
2659 + When switching from one gui to another one, the .mldonkey_gui* files
2660 may be incorrect, so you are advised to save them or delete them
2662 - #2067 ("nu" for bittorrent),
2663 #2070 (new option "all_sources_on_telnet"),
2664 #2094 (sort files by priority for each downloader)
2665 * Some modifications for soulseek:
2666 * Retry connect only after 300 seconds.
2667 * Don't retry connect after INVALIDPASS unless login or password is
2670 2003/10/12: Simon (release-2-5-4)
2671 * Applied patches #2033 (hide-dirs), #2038 (ocaml-3.07),
2672 #2039 (mlsubmit.reg), #2041 (hide-psswd)
2675 * Removed patch #1765
2678 * Applied patches #1608 (anti-thieves), #1669 (anti-spam),
2679 #1692 (min-users-per-server), #1695 (html-mods),
2680 #1710 (regexp in voo), #1711 (sorted voo),
2681 #1714 (gui priority bug fix), #1715 (fasttrack),
2682 #1732 (mldonkey_submit), #1733 (viewfiles 6 hours),
2683 #1734 (browse-friends), #1743 (bittorrent compliance),
2684 #1748 (emule-bugfix), #1753 (max-conn-servers),
2685 #1765 (limit-reqs DANGER), #1801 (http-proxy),
2686 #1843 (message-file), #1862 (download-amount),
2687 #2024 (filenames), #2025 (friends-slots),
2688 suxx-lugdunum-fix-v2
2690 DELAYED: #1911 (hidden-chunks)
2693 2003/06/07: Simon (release-2-5-3)
2694 * Applied patches #1582, #1594, #1598
2697 - CVS Modifications: Branches:
2698 * new branch release-2-5-devel for development version
2699 * default branch is STABLE now
2700 * branch release-2-5-1-patches is obsolete and should not be used anymore
2701 The last tag in this branch release-2-5-3 is still the most STABLE
2704 2003/06/05: Simon (release-2-5-3)(branch: release-2-5-1-patches)
2705 - Fixed ENORMOUS bug in donkey that could cause corruption on other clients
2706 All the md4s will be recomputed for all shared files at next startup.
2708 2003/05/28: Simon (release-2-5-2)
2710 * Completely unstable. For development only. This version may corrupt
2711 * all your downloads, destroy your config files, and so on...
2714 * CommonHosts: use the same system to manage hosts in Gnutella and
2715 Fasttrack (later in eDonkey and Overnet ?)
2716 * CommonUploads: save all UIDs (Sha1...) in shared_files.ini
2718 * A file can be downloaded together from FT, Gnutella and BitTorrent
2719 Downloads are displayed as on the "MultiNet" network.
2720 * The 'add_uid' command can be used to extend the knowledge on a file
2721 so that it can be downloaded from other networks.
2723 * Discard results without UIDs
2724 - New plugin 'donkey_devel' not working yet, enabled with option
2725 -enable-open_donkey, replace the other one, and should be able
2726 in the future to share downloads with other networks.
2728 2003/06/02: Simon (release-2-5-1)
2729 - BitTorrent: bug fix when reconnecting to tracker (remove empty event field)
2730 - DriverMain: remove use of "cp" command
2731 - Applied patches #1530, #1531, #1543, #1548 and #1563
2734 - Applied patches #1530, #1531
2737 - Fixed 'install' target of Makefile
2739 2003/05/26: Fabrice (release-2-5)
2742 2003/05/26: Simon (release-2-5-rc3)
2744 * Reduce client_name to 32 characters
2745 * Stop computing useless SHA1 hashes (inherited from Gnutella copy/paste)
2747 2003/05/26: Simon (release-2-5-rc2)
2749 * Plugins sorted in config panel
2750 - Fixed bug adding one file several times in 'old_files'
2752 2003/05/25: Simon (release-2-5-rc1)
2753 - Applied patch #1523, #1527
2755 * Limitation on the number of simultaneous sources for a file
2756 - Fixed major file corruption bug when using 'buffer_writes' in bittorrent,
2757 fasttrack and gnutella.
2759 2003/05/24: Simon (release-2-4-6)
2761 * Fixed a compilation problem
2763 * Fixed the problem with servers appearing as New Hosts
2764 - Plugins initialized in the correct order (no downloads restarted at 0%)
2766 2003/05/23: Simon (release-2-4-5)
2768 * Ask for a range only after the connection has succeeded
2769 * Support for Complex queries
2772 * Force flush with "buffer_writes" option before Sha1 computation
2773 - Applied patches #1512, #1513
2776 - Applied patch #1510
2777 - "set enable_... true/false" should now immediatly trigger the network
2778 (before that, a restart was necessary)
2780 2003/05/20: Simon (release-2-4-4)
2781 - Bug fix: the bug causing too many open file descriptors and pausing
2782 recovered files maybe fixed.
2784 * Fixed problem with \r in GWebCache
2786 * sig2dat:// links added
2787 * Automatically replace spaces in client name by _
2788 - Searches can be limited to particular network (bug fix in GUI)
2790 2003/05/19: Simon (release-2-4-3)
2791 - Applied patch #1503
2792 - Fasttrack: working good now :)
2793 * Use HTTP/1.0 (really necessary ? probably not)
2794 * Recover sources for files
2795 * Reconnect to good sources immediatly
2798 * Added number of leaves per ultrapeer
2800 2003/05/18: Simon (release-2-4-2)
2801 - Applied patches #1476, #1477, #1479 and #1481
2803 * Can look for new sources
2804 - Added mldonkey/tools/pandora/ to help understand protocols
2806 2003/05/14: Simon (release-2-4-1)
2807 - FastTrack: first try, far from complete, only for x86 !!!
2808 * Copy of gnutella/ plugin architecture to fasttrack/
2809 * Cipher C stubs available from Ocaml
2810 * Connection to main server: OK
2811 * Connections to ultrapeers: OK
2812 * Simple Searches sent: OK
2813 * Results received: OK
2814 * Downloads: OK, no recover yet
2815 - Config: copy old downloads.ini to downloads_expert.ini and
2816 donkey.ini if the latter ones are absent
2818 2003/05/10: Simon (release-2.4-0)
2820 * Fixed a bug making mldonkey use 100% of CPU when misbehaving clients
2821 send thousands of Have messages
2822 * New option 'delete_original' to get rid of the old file when splitting
2825 * Enabled by default when Gnutella is enabled
2826 * XML tags correctly added to results
2828 * Added 'New Server' button
2830 * Added the ability to choose the network for each search
2832 * Fixed bug with options that couldn't be changed anymore in WEB interface
2833 - Update ed2k_mozilla/mldonkey_protocol_handler.xpi to version 1.2
2835 2003/05/09: Simon (release-2-4-rc12)
2836 - ed2k_hash: computation false for multichunks files, fixed.
2839 * Reply to Q2 for URN requests
2840 * Limit downloads to 5 slots (max_available_slots option in gnutella.ini)
2841 * Support HTTP/1.1 upload, and /uri-res/N2R?urn:sha1: queries
2842 - Options: options have been splitted in different files:
2843 'downloads.ini' : most simple options
2844 'downloads_expert.ini' : options for experts
2845 'donkey.ini' : simple options for edonkey
2846 'donkey_expert.ini' : edonkey options for experts
2848 2003/05/08: Simon (release-2-4-rc11)
2849 - RPM: new Makefile rule 'rpm' to build rpms for mldonkey
2851 * Use both keyword and uid searches to recover files
2852 * Make a recover search at download startup (next one every hour)
2853 * Compiled only if Zlib is available
2854 * Gnutella2 support working (no upload yet... for sunday). To try,
2855 set enable_gnutella first to true, then set enable_gnutella2 to true
2856 in the gnutella plugin (and maybe enable_gnutella1 to false...)
2857 * Remove hosts older than 3 hours
2859 * Keeps pending messages to clients
2860 - ftruncate64 implementation rewritten
2862 * options panels are not options anymore
2863 * Protocol version 15:
2864 * ForgetSearch is replaced by CloseSearch which takes 2 args and
2867 2003/05/07: Simon (release-2-4-rc10)
2868 - Applied patches #1459, #1460 and #1462
2870 * New option 'servers', with mail.slsk.org:2240 by default
2872 * Only send modified options
2874 2003/05/05: Simon (release-2-4-rc9)
2876 * Added ed2k_hash to the distribution (use 'make ed2k_hash' to compile)
2878 * List parsing should be tail recursive now
2879 - Gnutella1/Gnutella2:
2880 * Better management of hosts
2881 * More aggressive with QKR queries
2882 - DNS: correctly handle names starting with numbers (bittorrent URLs for
2887 * Fixed defragmentation
2888 * Fixed QH2_H_DN message
2890 2003/05/01: Simon (v release-2-4-rc9)
2892 * Added GGEP extensions to PONG messages
2893 * Added Bye-Packet support
2895 2003/04/30: Simon (v release-2-4-rc8)
2896 - Applied patch #1432
2898 * COBS implemented and incoming GGEP
2899 * Some Vendor-Messages
2900 * More headers understood
2902 * Better control of max_opened_connections
2903 * More Aggressive lifetime for connections (10 minutes without downloads)
2906 - Applied patches #1427, #1428
2909 - Applied patch #1424
2910 - Changes in 64bits system calls
2912 * Bug fixes: HTTP return code is correctly tested
2914 2003/04/23: Simon (v release-2-4-rc6)
2915 - Applied patch #1402
2916 - Prevent exceptions from raising from calls to lprintf
2917 - Fixed bug in Unix32 causing error with file descriptors
2918 (and maybe file corruption)
2920 * Commit directories in multiple files
2922 2003/04/22: Simon (v release-2-4-rc5)
2924 * Old host discovery system doesnot work anymore. Implemented
2926 * Option prefix set to GNUT
2927 - Updated to use ocaml-3.06+27 which should support all Mac OS X versions
2928 - Applied pango's patches:
2929 88_login_missing_in_gui, 89_better_xs_messages, 90_limit_indirects
2930 - Applied patch #1397 (upload priority)
2932 * Fixed problem with never finishing downloads
2934 * Fixed problem with availability display
2936 * Don't use 'Accept:' header for gnutella1 hosts, since most of them
2937 refuse the connection
2940 - Complete reorganization of source tree
2941 - GUI: exit uses CTRL-q instead of CTRL-e
2943 2003/04/19: Simon (v release-2-4-rc4)
2944 - Applied patch #1393, #1395
2945 - Gnutella2 (not yet working):
2946 * Encoder/Decoder tested successfully on real shareaza recorded stream
2950 - Applied patches #1389, #1391
2953 - Changes in Makefile:
2954 * Compile only mlnet and mlnet+gui
2955 * mldonkey_gui is renamed in mlgui
2956 * mldonkey_gui2 is renamed in mlgui2, and not compiled by default
2957 * Added target 'install' (use --prefix configure option).
2958 * Create mldonkey, mlslsk,... as links to mlnet
2959 * Create mldonkey_gui as a link to mlgui
2960 - Fixed generated mlsubmit.reg
2962 * last_high_id is only changed if option use_server_id is set
2965 - Changed version number to 2.4-rc4
2967 * More aggressive reask delay of 2 minutes
2968 * Improve detection of end of download
2969 - Removed Sha1 and Tiger assertions in md4.ml, but set a flag when
2972 2003/04/15: Simon (v 2.04rc3)
2973 - CommonUploads: changed a bad comparison in download_engine
2974 - Applied patch #1385, #1387
2976 * Fixed a bug that prevented the download from starting in some cases
2977 * Any client from which some bytes were downloaded obtains immediatly
2979 * Can send several requests at once when enough bw is available
2981 2003/04/14: Simon (v 2.04rc2)
2982 - Donkey: more accurate when asking for slots
2985 - Applied patches #1377, #1379 and #1382
2988 * More checks to detect download termination
2989 - Limewire plugin renamed to Gnutella
2991 2003/04/08: Simon (v 2.04rc1-15)
2992 - Applied patch #1372 (= #1373 I hope)
2993 - Tiger: try to prevent Bus Error bugs on Solaris by aligning the buffer
2995 * Verify file before commiting
2996 * Properly cancel files
2997 - Unix32: flush buffers before closing files
2998 - Donkey: connections have now a lifetime of 20 minutes at the
2999 beginning, increased when receiving important messages (upload, download).
3000 Connections above max_opened_connections have only 1 minute 30 to life.
3001 Might improve the limit on the number of connections.
3003 2003/04/07: Simon (v 2.04rc1-14)
3004 - Fixed bug with client_uid option in mlnet.
3005 - Applied patch #1370
3007 * fixed problems in URLs when contacting tracker '+' -> '%20'
3008 * Update Downloaded chunks in interface
3009 * Resent chunks queries on Unchoke (correct ?)
3010 - Gnutella: Send urn:sha1: when available in QueryReplies
3013 - Applied pango's patch 87_preview_from_all_interfaces
3014 - Remove Queries page from GUI menu
3015 - Applied patch #1366
3017 2003/04/06: Simon (v 2.04rc1-13)
3018 - BitTorrent: almost complete implementation, still to test
3019 Current Restrictions:
3020 * No support for multiple files in one file (open files.ini,
3021 you will find the positions of the sub-files there)
3022 * No support for releasing files
3023 But upload WORKS correctly
3024 - Lot of code has moved, need some more testing before stable 2.04
3029 - Some C warnings removed
3030 - Moved donkey/ upload code to common/commonUploads.ml to be used by other
3032 - Fixed Tiger Tree function on BigEndian platforms
3035 - Fixed bugs #3079 and #3080 :)
3036 - New common/commonSwarming.ml module to handle swarming for all networks
3039 * Swarming possible, not completely tested
3040 * More headers understood:
3041 X-Gnutella-Alternate-Location, X-Gnutella-Content-URN,
3044 2003/04/01: Simon (v 2.04rc1-12)
3045 - Fixed per user Column Sorting in HTTP interface
3046 - Fixed bug #3003 :)
3047 - Fixed Filepath.path_to_string so that "" becomes [], and not [""] that
3048 makes mldonkey shares its own directory.
3049 - Implementation of Tiger trees correct for files < 1 MB
3050 - Lots of changes in Unix32
3051 - Applied patch #1340
3052 - Limewire Plugin: probably lots of bugs, many changes
3053 * Gnutella2 support started:
3055 * Protocol Encoding/Decoding not tested
3057 * Support for Magnets and HUGE
3058 * Different results if different UIDs, requests for files by UID
3059 - Applied pango's patches: 85_ip_from_highids, 86_priority_patch
3062 - CommonHasher: implemented asynchronous hashing of files using sha1.
3063 - Applied patch #1324
3065 2003/03/24: Simon (v 2.04rc1-11)
3066 - Fixed compilation problem of md4_c.c and md5_c.c
3068 2003/03/23: Simon (v 2.04rc1-10)
3069 - Gnutella/Limewire:
3070 * Upload tested successfully with gtk-gnutella
3071 * Push message understood (danger: unlimited number of connections)
3072 * Added computation of sha1 digests in Md4 module, digests of shared
3073 files are not yet computed.
3075 * Bandwidth should be displayed correctly in WEB interface: the
3076 control_ bandwidth should be displayed instead of tcp_ which includes
3078 * Filename: assert failure removed
3079 - Applied patch #1320
3081 2003/03/22: Simon (v 2.04rc1-9)
3083 * log_file with -daemon option
3084 * pending slots should only contain connected clients
3087 71_upload_slots_dynamic_allocation
3088 81_implicit_dllink_ovlink_commands
3089 83_hide_upload_slots_round_robin
3090 * Savannah: #1315, #1319
3092 2003/03/21: Simon (v 2.04rc1-8)
3093 - Fixed config/Makefile.in to compile static binaries
3094 - Bug fix: don't close stdout when a log_file is provided
3096 2003/03/20: Simon (v 2.04rc1-7)
3097 - Build libraries before building executables
3098 - Applied patch #1300, #1302, #1303, #1307
3099 - Use file_add_downloaded in all plugins: display correct download rate
3101 2003/03/19: Simon (v 2.04rc1-6)
3102 - Applied patch #1297, #1298
3103 - New command 'rename'
3104 - New option 'minimal_packet_size'
3105 - TcpBufferSocket: use 'minimal_packet_size' instead of 'ip_packet_size'
3106 - Modifications in Unix32 to abstract operations on big files. Next step:
3107 filesystems that don't support sparse-files (Windows)
3108 - 'auto_commit' is not done immediatly, but tested every minute
3109 - Bug fix: Paused files were caused by Printf.printf and print_newline
3110 with stdout closed (or terminal killed). Replaced by lprintf and
3115 * Unix.write limited to 16 kB.
3117 2003/03/19: Simon (v 2.04rc1-5)
3119 * Support for non-blocking sockets
3120 * New file .depend.mingw for dependencies under MinGW
3121 * If an error appears compiling mlnet, try "make mldonkey"
3122 - Applied patch #1294
3124 2003/03/18: Simon (v 2.04rc1-4)
3125 - Applied patches #1271, #1272
3126 - New experimental options 'buffer_writes', 'buffer_writes_delay' and
3127 'buffer_writes_threshold' to buffer writes to decrease HD usage.
3128 - Applied pango's patches:
3129 * pango, don't forget that you should modify config/Makefile.in and
3131 51_new_chunks_scheduling
3132 62_wait_for_id_before_publishing
3134 80_file_received_file_downloaded
3137 - New command 'calendar_add' to add a command to the calendar
3138 - Remove dependency to Zlib in LimeWire/eDonkey
3141 - Applied patch #1266
3142 - Fixed Challenge, so that it does not depend on Ocaml version
3144 2003/03/13: Simon (v 2.04rc1-3)
3145 - Applied patch #1263, #1264
3146 - Fixed bug with allowed_commands option
3148 2003/03/12: Simon (v 2.04rc1-2)
3149 - Applied patch #1259, #1261,
3150 + pango: 01_more_blocreq_checks, 08_better_default_parameters,
3151 60_no_emule_quota, 78_lugdunum_pings_fix, 79_auto_commit
3153 2003/03/11: Simon (v 2.04rc1-1)
3154 - New changes for Emule compatibility.
3155 - Added option 'log_file' in downloads.ini
3157 2003/03/10: Simon (release-2-04rc1)
3158 - Changes in replies to Emule AvailableSlot
3159 - Applied patches #1250, #1251
3160 - Terminal mode: recognize Window size when possible (rfc 1073)
3161 - Upload queue has been cleaned. Doesn't work as a fifo anymore.
3163 2003/03/10: Release 2.03,
3165 We are forced to release a new stable version a bit earlier than expected,
3166 due to problems with old clients accessing savannah at startup.
3167 Compared to the 2.02 release, this new release provides:
3168 * Better Emule compatibility
3169 * New improved sources management (fewer sources, but better sources)
3170 * Improved interfaces:
3171 * new WEB interface (use html_mods option to use the old one)
3172 * some colors in terminal (use term_ansi option to disable)
3173 * new external searches in the GUI
3176 - Fixed 0 upload bug :)
3179 - Debug: new commands 'debug_client <nums>' to see messages exchanged with
3180 those clients, and 'clear_debug' to clear the debug table.
3181 - New option '-daemon' and new command 'daemon' to run mldonkey in
3183 - New commands 'log_file <file>' and 'close_log' to log output to a file.
3184 - New command '! <cmd>' to execute a system command from the interface.
3185 The <cmd> command must have been defined in the option
3186 'allowed_commands' as the symbolic name for another command.
3187 You cannot pass arguments, only those associated with the command
3188 in 'allowed_commands' are used (default example: df)
3189 - New multi-user system:
3190 * Options 'password', 'http_login' and 'http_password' have been
3191 replaced by one option 'users', that should not be edited manually
3192 (to reset, remove it completely), since the passwords are encrypted
3194 * The default user is 'admin'. He should not be removed. He is the
3195 only one who has the right to add new users. Default password is
3197 * 'auth <user> <password>' is used to change the user in a
3199 * 'add_user <user> <password>' is used to add a user, or change the
3200 password associated with it. Only 'admin' is allowed to use this
3202 * Searches are now displayed per user. All other views are shared
3205 * Bug in GUI proto 7..13, where force param of Download_query was
3206 sent with bad opcode.
3207 - Links to the WEB server of savannah have been banned: in web_infos and
3208 network_update_url. The redirector is temporarily used to provide this
3211 * ANSI escape sequences: option "term_ansi", command "ansi true/false",
3212 to activate/disactivate colors on terminal
3213 * Command "term <width> <height>" for prompt on last line, until I
3214 remember how to detect terminal size automatically.
3215 - New option 'max_concurrent_downloads', and new state Queued for files
3216 being downloaded. Only the 'max_concurrent_downloads' files with
3217 highest priority are really being downloaded, other files with
3218 lower priority are waiting.
3219 - Limewire/Gnutella:
3220 * Correctly send the QRT table to ultrapeers
3221 * Almost able to reply to searches
3223 * Upload tab: new button "Add Shared Directory"
3224 - Applied patches #1247, #1228, #1235, #1242, #1248, #1232
3225 - Bug fixes in eDonkey:
3226 * 'peer_ip' is only called if reliable_sources is activated
3227 * A client cannot appear twice in the pending slots queue
3229 2003/03/05: Simon (v 2.02-29 next release: monday)
3230 - IMPORTANT Bug fixes (thx pango):
3231 * Corrupted blocks are removed
3232 * Re-order arguments when computing md4 with threads
3233 -> all your shared files hashes will be recomputed :(
3235 2003/03/05: Simon (v 2.02-28)
3237 * 'vr' should not raise Exception in String.sub, fix in
3238 result_format_of_name
3239 - Direct-Connect: use async DNS by threads when available
3240 - Applied patches #1226, #1227 from Savannah
3241 - Options: some memory improvements (clear unused initial options,
3242 avoid building intermediate data structures)
3244 2003/03/04: Simon (v 2.02-27)
3246 * 'log' command correctly set the size of the log (otherwise, an
3247 exception is raised... and no GUI can connect for eg)
3249 2003/03/04: Simon (v 2.02-26)
3250 - Applied patches #1219, #1220, #1221, #1222
3251 - Redirection of output to a log:
3252 * Only startup messages are sent to stdout
3253 * New argument -stdout for all messages to be sent to stdout
3254 * New commands: 'log' to see the last non-printed messages,
3255 'stdout <true|false>' to enable/disable messages to stdout again.
3257 2003/03/03: Simon (v 2.02-25)
3258 - Source Management:
3259 * Query files every min_reask_delay even when already connected
3260 * Removed the 2 queues for really bad files
3261 - Emule compatibility: on disconnect, file queries are stored if
3262 a JoinSlot message was sent, and reused if an unrequested AvailableSlot
3263 message is received (to be tested).
3264 - Duplication of similar chunks between files (the next step should be
3265 to only download one of these chunks) tested every 5 minutes
3266 - Applied patches #1203, #1204, #1210 and #1215
3267 - Applied patch 77_trusted_sources, activated by option 'trusted_sources'
3268 - New option 'max_indirect_connections' to limit the number of incoming
3270 - New command 'options' to print options by section
3272 2003/03/02: Simon (v 2.02-24)
3273 - New commands 'share <dir>' and 'unshare <dir>' to manipulate
3275 - Applied pango's patch 71_upload_slots_dynamic_allocation, controlled
3276 by option 'dynamic_slots' (false by default)
3277 - Applied patch #1199
3279 * Computation of guptime
3280 * Dropping all sources of files when too many sources
3281 * Mailer that don't accept the <..> addresses (new option
3282 'add_mail_brackets')
3283 - Added detection of similar chunks between files, not used yet
3284 - Applied patch #1200, with option 'filename_in_subject'
3285 - Source Management:
3286 * Changed default for min_reask_delay to 600 seconds
3287 * Two new queues, one for good clients (every 10 minutes), one for
3288 bad clients (every 6 hours)
3290 2003/03/01: Simon (v 2.02-23)
3292 * stats should be correctly saved
3293 * sources above max_sources_per_file should be correctly removed
3294 * IMPORTANT: JoinSlot message should be sent correctly again at
3296 - Gui: added a "Scan Ports" command to autodetect core port. Be careful, it
3297 can trigger intrusion detection softwares ! It is partially asynchronous,
3298 so that the replies may appear several seconds after the function returned.
3300 2003/02/28: Simon (v 2.02-22)
3301 - eDonkey: respect max_sources_per_file
3302 - Applied patch #1198, stats saved as options in 'stats.ini'
3303 - Added link to French forum on main WEB page
3305 2003/02/26: Simon (v 2.02-21)
3307 * Save hashes of commited files in shared_files.ini to remove
3308 rehashing commited files on startup
3309 * Remove / after the md4 in ed2k links
3310 * Full-Chunks SUPPORTED
3311 - Applied patch #1185
3312 - Applied pango's patches:
3313 63_revert_optimize_chunks_display
3314 65_fix_file_unbound_argument,
3316 67_can_download_from_uploaders,
3317 70_fix_duplicates_in_pending_slots_fifo
3318 74_emule_protocol_version
3319 Comments on patches not applied:
3320 * 73: should not use Weak.t but remove the client when disconnected.
3321 * 58: not sure what it does exactly
3322 * 60: emule quotas remain until full-chunk is fixed
3323 * 69: no full-chunk until we and edonkey can support it
3324 * other ones (51, 68, 71, 72): touch the internals of the sensible
3325 upload/download engine. need more time to check
3326 - Fix: correctly cache IPs in Ip.async_ip
3328 2003/02/25: Simon (v 2.02-20)
3329 - Applied patch #1174, #1177, #1178
3330 - With threads, asynchronous DNS resolution of urls
3331 - GUI: ed2k links directly saved to selection, but doesnot work yet
3333 * Try to work around the incoming Emule connections sending
3334 an immediate AvailableSlot
3335 * Inverted 2 shared/commit lines in CommonComplexOptions.file_commit to
3336 prevent rehashing of downloaded files
3337 - ./configure: Improved pthread support
3339 2003/02/25: Simon (v 2.02-19)
3340 - Fixed Makefile for pthread library
3342 2003/02/24: Simon (v 2.02-18)
3344 * Fixes: good sources dropped
3346 * Implementation of Query Routing 0.1
3347 - Applied patches #1169, #1173
3348 - ./configure: use option -enable-pthread-lib=pthread, or whatever, to enable
3351 2003/02/22: Simon (v 2.02-17)
3352 - GUI: new application mldonkey_installer'. Guess its goal. Need
3353 -enable-devel in ./configure . Not working yet.
3354 - Applied patch #1165, #1164, #1161
3358 * Removed slot reserved for mldonkey2
3359 * Added some UDP messages for Emule (not yet used)
3360 - Applied patch toggle_browse_share by Martin
3361 - Applied patch #1151, #1152 and #1156
3363 59_fix_gui2_compile_warning
3364 61_remove_zone_present_field,
3365 62_telnet_use_interface_buffer
3366 63_optimize_html_mods_chunks
3367 64_html_mods_upstats_links
3368 - Fix: 'uploaders' command only prints connected clients.
3369 - ./configure: new option -enable-pthread, if you want to compute some
3370 md4s in another thread.
3372 2003/02/20: Simon (v 2.02-16) tag unstable-2-02-16
3373 - Applied patch #1137: new html_mods
3374 - Added some options in 'vo':
3375 client_name,allowed_ips,client_ip, force_client_ip
3377 * If no native code compiler is available, compile in bytecode (HPPA)
3378 * New option -disable-gui
3380 * Overnet: Fixed message 27, removed message 33
3381 * eDonkey: added message 92
3382 * Try to print the IP:port for unknown packets
3383 - Net: mtu changed to 1500
3385 2003/02/19: Simon (v 2.02-15)
3386 - Applied patch #1136: better mail output
3387 - Applied patch adding "rem" command
3388 - Applied patch #1128: Adding chunk_width edit option
3389 - Applied patch #890: FakeCheck link
3391 * Try to recover direct address from connecting client
3392 * Try to ask good connecting clients to reconnect (either by tcp or udp)
3394 2003/02/19: Simon (v 2.02-14)
3395 - Bug fix: vd <num> (patch #1135)
3397 2003/02/18: Simon (v 2.02-13)
3398 - Upgraded to lattest html_mods
3400 * You can now pass the full path to a file filled with urls (ed2k://) in
3403 2003/02/18: Simon (v 2.02-12)
3404 - fixed bug exiting on set_request_result not found.
3406 2003/02/18: Simon (release unstable-2-02-11)
3407 - DonkeyServers: fixed a bug with socket Lifetimes
3408 - Fixed bugs in gpattern and vm commands
3410 2003/02/17: Simon (release unstable-2-02-10)
3411 - DonkeySources3: new source management (use 'sources' command for info)
3412 * Increased default max_clients_per_second to 30
3413 * Removed ban on rank > 500
3414 - Applied last html_mods patch. Does not work well on my Mozilla version.
3415 So, disabled by default (activate with html_mods = true). WEB Messages
3416 have been changed, so that foreign translations are not ok anymore.
3417 - DonkeyServers: query more files before deconnection from clients.
3421 * Added small icons (used by default)
3423 * better chroot support
3424 * set shell variable MLDONKEY_CHROOT=/dir if you want mldonkey to
3425 chroot itself in /dir. mldonkey must be started as root (or setuid)
3426 and should drop its priviledges using run_as_user/run_as_useruid.
3427 * added option 'run_as_useruid'. The directory where mldonkey
3428 will save its files must be writtable by this user, and
3429 the incoming directory too (recall: options can be set on the
3430 command line: #root> /usr/local/bin/mldonkey -run_as_useruid 502).
3434 * New query tabs: "ShareReactor Search" and "Jigle Search"
3435 * More options in "FreeDB Search" tab
3436 - Ip: DNS queries are now always cached.
3439 - Applied patch #1079 (fragmentation)
3441 * Keyword store completely rewritten
3442 * Remove keywords older than 1 hour
3446 * New query tab "IMDB Search"
3449 - Applied html_mods patch 2 from Mike Jones
3451 * New query tab "FreeDB Search"
3454 - Ported to Ocaml CVS version: 3.06+21 is required on Mac OS X. Downloads
3455 are done from Savannah for 3.06 and 3.06+21
3457 * New message CleanTables sent every 30 minutes to the GUI to clean
3459 - DonkeyProto: closer to Overnet 0.44, still some information missing
3460 A client browse trace is available in DonkeyProtoClient.ml
3463 - WEB interface: applied patch html_mods
3464 - Applied patch 1053 (separated blocks in GUI)
3466 * moved column popup on right button
3469 - GUI: display rank when possible
3471 2003/01/30: Simon (tag unstable-2-02-9, and good week-end)
3472 - Net: attempt to take into account TCP/IP packets size in bandwidth control.
3473 Seems to work better
3475 * Change file priority in GUI
3476 * New option 'downloads_up' to permute downloads/downloaded
3477 * Click on column titles to sort/add/remove them
3479 * Ask files from server in decreasing priorities order
3480 * Should be able to import Emule .part.met files
3481 - Mailer: patch from <moumar@netcourrier.com> applied
3484 - Changed The License of okey, configwin, mp3tag and mlchat to GPL
3485 - one tab per list in the column configuration tab (gui/settings)
3490 * New state "Queued out" for sources
3491 * New state "Aborted <reason>" for files
3492 * Some items copied from the "downloaded" contextual menu to the
3493 "Downloading" contextual menu
3495 * Sources Management a la 2-02-5 updated (next time, choose your
3496 source management depending on an option ?)
3498 * New option "enable_overnet" (true by default), accessible from
3501 2003/01/26: Simon (tag unstable-2-02-8)
3502 - Added bundle binaries (core + gui with communication via FIFO) to
3503 ease use of alternative networks (mldc+gui, mlslsk+gui, etc).
3505 * FIX: connections to Overnet
3506 * Updated 'cs' command
3507 * FIX: seens in stats replaced by successful connections
3509 * 'mem_stats' prints a bit more info (not yet enough)
3513 * FIX: Active searches don't work, go back to passive
3515 2003/01/25: Simon (tag unstable-2-02-7)
3517 * Better management of users in servers/rooms
3518 * Servers headers displayed in GUI console
3519 * Active Searches enabled if not "firewalled"
3520 (don't forget to set the 'firewalled' option if needed, or
3521 to set 'force_client_ip' since IP detection does not work
3524 * Queries moved to server tab
3525 * FIX: rooms work correctly
3527 - limited to 500 lines
3528 - FIX: Font "fixed" is not required anymore
3529 - Combo/history of commands
3531 * New option 'log_clients_on_console' to log client disconnections
3534 * Propagate max 20 direct sources, not older than 10 minutes, verified.
3538 * Compressed packets are accepted (not yet requested)
3539 * Second Sources packet format accepted
3541 * Respect the timeout between searches
3542 * Take file state into account
3544 * don't touch client_ip if not changed
3545 * correctly remove "Bad clients"
3547 * remove sources not connected since
3548 max_source_age * 12 h (half-days instead of days).
3549 * correctly save source_age
3550 * take priority and popularity into account for score
3554 * Opennap plugin should compile again
3555 * Last chunk always downloaded first
3556 - Patch applied: new_client_stats (cs command)
3558 * Improved 'sources' command stats
3559 * Scores of sources are saved
3560 * File state is taken into account for the score
3561 * Sources with rank > 300 are not kept in good clients
3562 - Direct-Connect: no leeching anymore !
3563 * mldc replies correctly to passive searches (ie on the same hub)
3565 2003/01/22: Simon (tag unstable-2-02-6)
3566 * Mainly a bug-fix release for 2-02-5. Lots of features still missing
3567 (sources' scores are not saved, lastreqs,cancelled files sources not
3568 immediatly removed,...)
3570 - Fix: problem with downloads never starting
3571 - Fix: problem with partial chunks not saved
3572 - Added www.mldonkey.org in the HTTP interface
3573 - Better information on request results for each client
3574 - New option 'verbosity' to choose which warnings to display.
3577 - Replaced date using floats by ints (lots of new bugs...)
3578 Please, signal any incompatibility with guis (mldonkeywatch...)
3581 - Started implementing new source management system
3584 - Global change to use int64 instead of int32 everywhere. I hope I didnot
3585 forget places, otherwise big bugs.
3588 - Added doc/overnet.txt
3592 * Old sources are stored in two queues to always start by the best ones
3593 * FIX: Connected sources are also saved
3594 * FIX: Connected sources are also printed
3597 - DonkeyInteractive: FIX: "out-of-bound" error
3598 - DriverControlers: shorter help
3599 - DonkeyProtoClient:
3600 * FIX: for cDonkey, send both QueryChunksReq and QueryFileReq
3601 - DonkeyOneFile: fixed non-shared partial downloads at startup
3602 - Options: values can be aliases to reduce space usage (
3603 used in file_sources.ini)
3605 * FIX: sources are sorted to avoid recently-connected sources in
3607 * clients ranking > 1000 put in concurrent_sources, not good sources
3609 * connection lifetime of connection set to 1 minute, and prolounged
3610 if either peer uploads or downloads
3611 * FIX: challenge is also send for incomning connection
3612 * ban clients with queue ranking > 1000 and send them a message
3613 * send a bad QueueRanking to banned clients asking to enter
3615 - CommonOption: save_options_delay default set to 15 minutes
3616 - config/Makefile.in: IRC compiled by default
3618 2003/01/13: Simon (tag unstable-2-02-5)
3619 - DonkeyClients: add md4s of connected clients to a hashtbl to prevent
3620 accepting two connections from the same client.
3622 * new sources are queued LIFO.
3623 * old sources are immediatly stored in old_sources.
3624 * fixed adding several times the same file to one source
3625 - DonkeyOptions: md4 now identifies mldonkey as emule.
3626 - Gui_downloads: expose events redraw the color bar
3627 - DonkeyServers: black-list servers on port 4662
3630 - DonkeyGlobals: remove 1 from size to compute nchunks in new_file
3631 - DonkeyTypes: removed field file_all_chunks, recomputed
3632 - DonkeyComplexOptions: save mtime and chunk states. mldonkey should not
3633 compute the md4 at each startup anymore.
3636 - Source Management: ask for new sources only if we have fewer than
3637 600 * max_clients_per_second new/good sources.
3638 - IRC: completely working ?
3639 * Connect to server and login
3640 * General channels (right-menu on IRC account) such as '#mldonkey' :)
3641 * In channels: receive messages, receive users, send messages, close chat
3642 * Private channels with users (double-click on user)
3644 2003/01/10: Simon (tag unstable-2-02-4)
3645 - Gui: display chunks availability when selecting a source
3646 - DonkeyComplexOptions: saved some space in file_sources.ini
3648 * JoinQueue are not forgotten when the queue is full.
3649 - DonkeyGlobals: Use Weak Hashtbl for udp_clients. Should save memory.
3650 - New command 'sources' to print the state of the different source queues.
3651 - DonkeySources2: Always use the same client_num for the same source
3652 (to avoid flooding the GUI with new clients)
3653 - Pango's patches: 39_readable_server_banners, 40_boot_time_is_redundant,
3654 43_waiting_queries_late_filtering, 46_overnet_fix_errormsg,
3655 50_tight_file_commit, 52_self_create_mldonkey_gui_ini ,
3656 53_dont_propagate_overnet_sources, 55_overnet_send_appropriate_infos
3657 57_optional_servers_walking
3659 2003/01/10: Simon (tag unstable-2-02-3)
3660 - DonkeySources2: fixes from 2003/01/08 had been reverted by CVS.
3661 Sources were dropped under heavy usage
3663 2003/01/09: Simon (tag unstable-2-02-2)
3664 - DonkeyClient/DonkeyProtoClient: complete implementation of Emule
3665 client-to-client source propagation.
3666 - DonkeyClient: limitation of file groups to 1000 files
3667 (should save memory)
3668 - DonkeyGlobals: removed the mldonkey letters in md4
3669 - Makefile: 'mlim' is compiled only if mldonkey_gui is compiled
3670 - DonkeyOptions: removed options are back in downloads.ini
3672 2003/01/08: Simon (tag unstable-2-02-1)
3673 - Fixed some bugs in new sources management. Seems to works pretty well.
3674 - For fun: new mldonkey authentification, just to see how long it will take
3675 to emule devels to break it :)
3679 * called automatically by make when needed
3680 * -enable-im has been removed
3681 * -enable-devel has been added for development things
3683 * Friends, accounts and rooms are packed inside a notebook
3684 * IRC connects and join channels, but the channel widget is not done
3685 * The IM widget is available from mldonkey_gui IM menu
3686 * 'mlim' is mldonkey IM-specific program
3688 * New source management seems to work, not complete yet
3689 * Upload: fill client buffers depending on the upload rate
3692 - Makefile: simplification and regeneration from config/Makefile.in
3695 - Gui: fixed the display of the number of shared files
3699 * New option 'keep_best_server' (default true) to automatically change
3700 the server mldonkey remains connected when it finds a better server
3701 * walker: does not reconnect if already connected to more than
3702 the maximal number of servers (option 'max_walker_servers' (default 1)).
3705 - Opennap: send shared files to server after connection.
3709 * new options file 'edonkey.ini' for options specific to eDonkey/Overnet
3710 * eDonkey specific options moved from 'downloads.ini' to 'edonkey.ini'
3711 - Direct-Connect: upload works correctly. Need more tests. Maybe add
3712 different mailing-lists for (mldonkey-dc@, mldonkey-nap@,...)
3715 - New argument -find_port, to search other ports when the ones specified are
3716 already used. The options are modified accordingly.
3717 - Option 'allowed_ips': changed are immediatly taken into account for
3719 - Major Bug: fixed bug of 100% CPU usage when timeout < 0.0001 and poll used.
3720 - Direct-Connect: upload of shared list works
3721 - Makefile: different executables for each network.
3722 'mldonkey' -> eDonkey2000 + Overnet
3723 'mldc' -> Direct-Connect
3724 'mlgnut' -> Gnutella
3725 'mlslsk' -> SoulSeek
3726 'mlnap' -> Open Napster
3727 and 'mlnet' for all networks
3730 - Test for existence of the GUI before asking or trying to start it
3732 2002/12/23: Simon (tag release-2-02)
3734 - DonkeyClient: fixed a bug preventing download from indirect clients.
3736 2002/12/21: Simon (tag release-2-01-4)
3737 - DonkeyOvernet: updated TCP protocol to overnet 0.42
3739 * DonkeyOneFile: removed a bug disconnecting from time to time an uploader.
3741 * verify that clients have received a slot before uploading
3742 * remove client from upload queue when reconnecting
3745 - Applied patch #812 (KDE Icon set). The old icons can still be used by
3746 changing the Makefile line : ICONS_CHOICE=big
3747 - Applied patch #852 (wildcards in black-list)
3748 - Applied patch #855: correctly sort servers before remove_old_servers
3749 - Removed some options for Overnet: publish and search for sources
3751 - DonkeyOptions: new options:
3752 ban_queue_jumper (true): if you want to ban clients reasking files too fast
3753 ban_period (6): how long are they banned
3754 send_warning_messages (false): send a message when a client is banned
3755 max_emule_slots (33): percent of upload slots that emule clients can use
3756 (cannot be set under 25%)
3760 - DonkeyClient: quota limitations:
3761 * Emule clients can not get more than 1/3 of the upload slots
3762 * at least one mldonkey client can always enter the queue
3763 - DonkeyClient: banning mechanism for clients that connect too often
3764 (don't prevent downloading from them)
3766 * Remove duplicates at end of list
3769 - Multi-column sort should work again.
3770 - Reverted again the query for all files to a query for one file.
3772 2002/12/18: Simon (tag release-2-01-3)
3773 - Removed the Credit System. The world is already unfair enough, no need
3774 to bring a monetary system here. Moreover, it prevents correct downloads
3775 from other mldonkey clients !
3776 - Overnet: Applied Norbert Lataille's patch 3.0
3778 2002/12/18: Simon (tag release-2-01-2)
3779 - MinGW port: should compile and seems to run. Not yet tested enough.
3781 * Better way to choose the master servers: if a new
3782 server has 5 times more users or at least 1000 more users than a master
3783 server, it replaces the master server.
3784 * Don't remove old servers if we are connected to them !
3787 - Prevent downloading the entire file list at every connection to a friend
3788 - Added Ip.reachable to remove local network addresses
3789 - Started port to native Windows via MinGW
3792 - Applied Martin's patch on WEB Realm
3793 - Added option 'run_as_user' that can be used to change (setuid) the
3794 priviledges of mldonkey after ports binding.
3795 - Started implementing upload in Direct-Connect
3796 - New command 'friends' to print a list of all friends
3799 - Applied Norbert Lataille's patch 2.5 on Overnet publish
3800 - Applied Andre Hinrichs's patch for better help
3801 - Applied Pango's patches (20021213b):
3802 05_save_client_last_filereqs: applied
3803 07_keep_user_filenames: applied
3804 20_vd_sharp_urls: applied
3805 21_queue_new_sources
3806 24_unbroke_random_order: applied
3807 25_bolder_remove_old_sources
3808 29_mrvn_eta: applied
3809 32_xou_web_interface: applied
3810 34_suxxx_display_chunks_in_telnet: applied
3811 35_fix_console: applied
3814 - Rewritten remove_old_servers, scheduled every 15 min
3815 * CommonComplexOptions.servers is an intmap, not a list anymore
3816 * Delays are printed
3817 * Black-listed servers are removed immediatly
3818 * Last Connection is extracted immediatly
3820 2002/12/09: Simon (tag release-2-01)
3821 - Fabrice should compile and release binaries for 2.01
3822 - Fixed problem with stats
3823 - Overnet: added an option for publish (false by default since still in dev)
3824 - IM: Only Yahoo works
3825 - A message is sent to old clients only randomly.
3828 - Applied Overnet publish patch from Norbert LATAILLE
3829 - The Overnet patch is too aggressive (about 5 kB/s). It really needs to
3833 - Fixed bug in "nu" command (thanks Rudolf Polzer)
3834 - "reshare" now add new files to upload.
3837 - Applying Pango's patch:
3838 01_display_server_banners: banners already appear in GUI console
3839 02_force_high_id: applied
3840 03_overnet_boot_dns_resolution: already done
3841 05_network_signature_change: applied
3842 06_wrong_lowid_display: already done
3843 07_keep_user_filenames: applied
3844 08_better_default_parameters: partially applied
3845 09_md4_speedup.patch: already done
3846 10_port_blacklist: applied
3847 11_max_connected_servers_offbyone: already done
3848 12_files_md4_corruption: already done
3849 13_revert_iptos: applied, but why in and out ?
3850 14_get_chunks_in_random_order: applied, but with an option to disable it
3851 15_fix_ovweb_default_site: applied, but an option would be better
3852 16_sources_per_chunk: applied
3853 18_remove_cancelled_downloads: applied
3854 20_vd_sharp_urls: applied
3855 24_check_for_x: applied
3856 22_connect_on_server_urls: applied
3857 26_old_file_on_cancel: applied, but option, disabled by default
3858 23_uploaders_command: applied
3859 27_selective_hide_files: applied
3861 NOT APPLIED, need some discussion:
3862 17_hide_chunks_being_uploaded:
3863 21_fifo_new_sources:
3864 25_bolder_remove_old_sources:
3867 - Gpattern: fixed bugs introduced by mldonkey :)
3868 - Gui_servers, Gui_friends: server users list and file sources list are only
3869 update 1/10 second after selection to avoid flickering.
3872 - Moved some code in the GUI driver to avoid sending many messages when
3873 GUI use the POLL extension.
3876 - Applets: new directory applets/, containing 3 sub-directories:
3877 * api: a common C api used by applets to chat with mldonkey on its GUI port
3878 * kde: a KDE panel applet
3879 * gnome: a GNOME panel applet
3880 A lot to be done. I know a bit GTK, not QT ...
3881 The Client_stats message is not yet completely filled with useful data
3886 * Accounts Window, and Toplevel menu to access it
3887 * Contacts Window works
3891 - Gui_rooms: each opened room has its own users/messages widgets, to avoid
3892 reprinting all messages when changing of room. Maxence, could you
3893 look at that and explain me how to destroy a widget when room is
3895 - CommonInteractive: raise Not_found when the option doesnot exists
3896 (no more "option NAME value changed" for non-existing options :)
3897 - Instant Messaging: Started implementing the interface for instant
3901 - CommonClient: check MD4 replies from client (inspired from patch #662)
3902 - DriverMain: track options_version, to be able to update the options
3903 when a new version of mldonkey is used.
3906 - CommonOptions: added the redirector-generated server list to web_infos,
3907 and an option to change the redirector. Now, we should probably
3908 disable auto_update_server by default, since the relocator gives
3909 a nice server list. Or we should give more weight to new servers
3910 when trying to connect.
3913 - DonkeyServer: added sending of UDP pings. Check that pings have been
3914 replied before sending extended search/locate requests.
3915 - DonkeyClient: changed mldonkey-specific protocol to recognize old
3916 clients, and send a warning.
3919 - Fixed bug #1701 ?: read at least 1000 bytes before writing stream
3920 in a file from Limewire. Gnutella clients problem, or is_http_ok is
3922 - Fixed bug #1708 ?: rewritten get_page and wget in net/http_client.ml
3924 - Support #101511: in the Upload panel of the GUI, the contextual menu
3925 offers to print ed2k links in the Console panel.
3926 - GuiTypes: new event Server_message_event to send server messages to
3928 - GuiEncoding/GuiDeconding: now, protocol versions will only change when
3929 the encoding of some old messages changes, not when new messages
3930 are added, so that new messages can be handled even if an old
3931 format is used for other messages (old GUIs can benefit from new
3933 - DonkeyOvernet: change the URL in 'ovweb'
3934 - DonkeyProtoCom: sending much more information to the redirector, so that:
3935 - we can generate our own server list
3936 - we can generate an overnet peer list
3937 - we can gather some statistics on node bandwidth usage to decide
3938 when to create supernodes.
3939 - Observer: now generates a 'servers.met' file every 5 minutes, which is
3940 sent to savannah, if I find the command :), but the dest is:
3941 "http://savannah.nongnu.org/download/mldonkey/network/servers.met"
3942 if you want to add to your web_infos.
3943 Servers inside are guaranteed alive in the last 5 hours (well,
3944 unless the redirector is down which is often true :( )
3947 - common/commonOptions.ml: new option "network_update_url" to
3948 download files "motd.html" and "motd.conf" used to update some
3949 parameters in all clients. "motd.conf" is displayed in the
3950 HTML and telnet interfaces, and at startup. Why not in the GUI :) ?
3951 These URLs are downloaded every day, and can change the configuration
3952 of the client remotely. This will be used later to test different
3953 parameters to activate/desactivate ultrapeers behaviors.
3954 - donkey/donkeyServer.ml: new implementation of remove_old_servers. The
3955 new implementation sorts the servers, and remove all those that
3956 exceed their age, but guaranty to let at least "min_left_servers" in
3958 - donkey/donkeySupernode.ml: started implementation of supernodes.
3959 Supernodes are mldonkey clients, that act as pseudo-servers:
3960 - they accept queries from mldonkey clients
3961 - they index files from all clients
3962 - donkey/donkeyOvernet.ml: fixed bug preventing removal of old
3964 - config/configure.in: REQUIRED_LABLGTK=1.2.4 (please, dont force
3965 people to upgrade if it is not REQUIRED). Use the configure
3966 script to detect the version and to generate stubs for simple
3967 modifications (lib/gAutoconf.ml.new.in). Only upgrade for
3968 major reasons (ocaml release eg).
3971 - config/configure.in: detection of lablgtk version to be able to compile
3972 without lablgtk-20021031 (must find mouse position, zoggy ??).
3973 GToolbox.popup_menu is generated by ./configure from
3974 lib/gAutoconf.ml.new.in
3975 - gpattern/gpattern.ml: using arrays instead of lists. filters directly
3976 integrated. Forces many changes in gui/gui*.ml, but should be much
3978 - gui/gui_downloads.ml: Call to remove_client removed until a new message
3979 is added for that in the protocol
3980 - net/udpSocket.ml: implementation of SOCKS 5 support for UDP. Must
3981 check that bytes are correctly ordered.
3984 - Fabrice has to move, and his new employer does not allow him to
3985 program in other open-source projects (for Intellectual Property
3986 problems). So he will keep administrating the project (web site,
3987 forums, releases), while I'm integrated in the developper team
3988 as main developper... As a start, I have some bugs to fix, and
3989 I would like to create a parallel network over edonkey2000 using
3990 mldonkey supernodes.
3993 - changes to use lablgtk-20021031 (@#!:@* Why the fuck did you do that ?
3994 you are the only developper to use it, nobody can compile now :(
3996 2002/11/04: mldonkey
3997 - Applied patch #634 (increase buffer size for md4 comp.)
3998 patch #631 (max_connected_servers off by one)
3999 patch #630 (low id display)
4000 patch #632 (use DNS in "boot")
4003 - New implementation of 'remove_old_clients'
4005 2002/10/22: mldonkey
4006 - Patch #576 applied.
4008 * Message files changed: ~/.mldonkey_gui_messages.ini for GUI and
4009 ~/.mldonkey_messages.ini for core
4010 * Some messages customizable in core
4011 * web_common_header, html_header and download_html_header moved
4012 to ~/.mldonkey_messages.ini
4013 * ~/.mldonkey_messages.ini can be overwritten MLDONKEY_MESSAGES
4015 2002/10/21: mldonkey
4016 - lib/options.ml: always close open files. "Too Many Open File" bug again.
4018 2002/10/20: mldonkey
4019 - New default options for 'web_common_header' and 'html_header' by Xou.
4020 - Patches #572, #573 and #574 applied.
4022 2002/10/16: mldonkey
4024 - fix: uploaded files do not appear twice in panel
4025 - fix: empty results are not accepted anymore (Overnet ?)
4026 - fix: "ovweb" accepts URLs since default site is down
4028 2002/10/15: mldonkey
4029 - fix: files should not appear twice anymore in upload panel (files whose
4030 md4s have been computed replace [are not added anymore to] their
4031 corresponding temporary shared file).
4032 - fix: added must_write in udpSocket.ml when bandwidth controler is used
4033 (UDP packets were not sent anymore...)
4034 - fix: upload not more than the bandwidth each second
4036 2002/10/14: mldonkey
4037 - add: internationalisation
4038 * envirronment variable MLDONKEY_GUI_MESSAGES
4039 - fix: rewritten upload in edonkey. Old mode can be restaured with option
4040 'new_upload_system' set to false
4042 2002/10/13: mldonkey
4043 - add: internationalisation
4044 * new module lib/gettext.ml for format options
4045 * new GUI config file gui_messages.ini
4046 * new directory i18n to store gui_messages.ini.?? files for
4047 contributed languages
4049 2002/10/12: mldonkey
4050 - fix: support for several GUIs at the same time
4051 * Changes in how objects updates are monitored
4052 * Lots of changes in DriverInterface
4054 2002/10/11: mldonkey
4055 - add: 'close_all_sockets' command to close all connection sockets.
4056 Added to the SIGHUP signal handler.
4057 - fix: SIGHUP doesn't call network_enable/disable anymore. Bug about
4058 automatic disabling of edonkey plugin ?
4059 - fix: new udp bandwidth management
4060 - add: starting reimplementing multi-gui
4062 2002/10/09: mldonkey
4063 - add: catch SIGTERM and save the config before exiting
4064 - add: publication on Overnet has been implemented, but not tested yet.
4065 - fix: "ovstats" displays more information on current searches
4067 2002/10/08: mldonkey
4068 - fix: bug in indexer2.ml that prevented complex searches in local history
4070 - patch #556 and debian/ from #553 from Goswin von Brederlow. Some problems
4071 with the end of the patch #553.
4072 * Availability seen in % of missing chunks, and height in color bar.
4073 * New "last-seen" and "Age" columns in GUI
4074 * No segfault on division by zero when size=0
4075 * No queries for paused files.
4076 * New debian/ directory
4078 - add: gui open a message box when password is not valid.
4080 2002/10/07: mldonkey
4081 - fix: "forget_search" should work correctly now
4082 - fix: use Unix.LargeFile.stat instead of Unix.stat to avoid
4083 exception when sharing files greater than 1.7 Go
4084 - add: filters. Need to enable 'filter_search' option, and to
4085 change 'filter_search_delay' (results are gathered during this delay,
4086 and all filtered together and displayed, so results are displayed
4087 with this period, and no results are displayed before the delay).
4089 2002/10/06: mldonkey
4090 - fix: split add_interesting_client in two different functions:
4091 force_fast_connect_client (connect immediatly, regardless of
4092 min_reask_delay) and connect_as_soon_as_possible.
4093 - fix bug #1291: vma does now display all servers
4094 - add: new command "version"
4095 - fix: "nu" can take negative arguments to decrease the no-upload period
4096 - fix: stop adding MD4 to proposed names
4098 2002/10/05: mldonkey
4099 - fix: clients_lists are now stored in a 5 buckets array, one per minute.
4100 Strange behavior: the list is almost always full, and the number of fds
4101 increases dangerously. set client_timeout to 30 or smaller to
4102 improve that ? Must check that this timeout is changed when the client
4103 becomes interesting (queued for upload or download). Also set
4104 max_clients_per_second to more than 5...
4105 - fix: prefered files are not queried twice anymore, nor client repeatedly
4106 queried after connection, to avoid Emule Black-list stupid mechanism.
4107 - fix: unknown commands should print an error now
4108 - add: new command "priority" that can be used to change the priority of
4109 a file. Such files will get priority times more bandwidth than
4112 * new command "use_poll" to switch between poll and select.
4113 * Fixed bug in poll making huge CPU usage
4114 - add: new messages for publishing files on Overnet.
4116 2002/10/04: mldonkey
4117 - fix: file_best_name should be used more often
4118 - fix: recover_temp should use the best available name
4119 - fix: the number of overnet peers saved in servers.ini is now limited
4120 by overnet_max_known_peers
4122 2002/10/03: mldonkey
4123 - add: new files for IP multicast, not used, probably never
4124 - add: overnet URLs in "ovlink", statistics "ovstats"
4125 - add: overnet new options to reduce memory usage "overnet_max_search_hits"
4126 and "overnet_max_waiting_peers"
4128 2002/10/02: mldonkey
4129 - add: priority of files
4130 * read power added to TcpBufferedSocket.t for priviledged connections
4131 * DonkeyTypes.file_priority for priviledged files
4132 * DonkeyTypes.client_power for priviledged clients
4134 2002/10/01: mldonkey
4135 - add: more debug output for 'dump_heap'
4136 - donkeyClients.ml: SourceReq clients are not immediatly added to
4139 2002/09/29: mldonkey
4140 - fix: bug #1252: servers were added several times in Opennap/DC to each user.
4141 - fix: ed2k link should appear again in 'download' mail
4143 2002/09/28: mldonkey
4144 - fix: sources are correctly removed from the GUI locations panel
4145 - fix: Makefile should correctly compile targets 'static' and 'byte'
4147 MORECFLAGS="-I patches/ocaml-3.06/ -DHEAP_DUMP" make cdk/heap_c.o
4148 to compile with "dump_head" command.
4150 2002/09/28: mldonkey
4151 - fix: incoming connections timeout are now correctly set, and
4152 connections should be correctly initialized.
4154 * With select, you cannot use more than 1024 file descriptors
4155 (otherwise, it segfaults)
4156 * Added poll support, that allows to use more than 1024 fds and
4158 - fix: better control of the number of used fds
4159 - add: message in GUI starter about the 'ask_for_gui' option
4160 - fix: faster sharing of downloaded files (probably present chunks are
4162 - fix: Ip.valid check for class D addresses
4163 - add: new option 'verbose_overnet'
4164 - fix: a file name is changed only if it was the MD4 before.
4165 - fix: don't query blocks for Paused files
4167 2002/09/27: mldonkey
4168 - fix: upload improvements
4169 * names are correctly chosen, and sent to the server
4170 * all BUFFER_OVERFLOW due to long file lists have been removed
4171 * after restart, non commited files are still shared.
4172 * bug fixed when shared file list is too long (shortened message)
4173 * the size of the ShareReq message directly depends on the space
4174 available in the server buffer.
4175 * md4s for downloaded files are never recomputed after commit
4176 - fix: force download:
4177 * new contectual menu item "Force Download" in GUI result panel
4178 * "force_download" should now work well
4179 - add: core errors are displayed in the GUI console (maybe the last line
4180 of the console should be displayed in the status bar ?)
4181 - GUI protocol 7 for "force" argument to Download_query
4184 - add : web directory to manage source files of generated mldonkey pages
4185 - change : chat protocol version (-> 1.1) to be able to communicate with
4186 mlchat from Cameleon
4188 2002/09/25: mldonkey
4189 - add: new module common/commonDownloads.ml to share the functions used
4190 in all network where downloads are in one piece.
4191 - fix: mail, chat and file_completed_cmd are used for all finished downloads
4192 not only eDonkey (CommonInteractive.file_complete)
4193 - fix: file_commit now moves the file to incoming/. All networks must now
4194 use the "commit" function, not only edonkey.
4195 - fix: try to save the md4 of each file before sharing it.
4197 2002/09/24: mldonkey
4198 - fix: renewed my passport (6 hours)
4199 - fix: prevent "BAD BAD BAD" lines from removing good sources. Very Important
4200 Bug for your downloads.
4202 2002/09/23: mldonkey
4203 - fix: mldonkey_gui prints a better error message when the hostname couldn't
4205 - fix: the configure script allows ocaml versions with +n extensions.
4206 - add: new program mldonkey_guistarter to start the GUI immediatly at
4208 * New options 'ask_for_gui', 'start_gui', 'mldonkey_bin' and 'mldonkey_gui'
4209 * New option panel 'Startup'
4210 - fix: get_int64 works correctly (no more negative upload counters)
4212 2002/09/22: mldonkey
4213 - fix: udp packets added to bandwidth computation
4215 - add: new option panel for plugins
4216 - add: each plugin defines its own option for the GUI panel
4217 - fix: when gui_poll, don't send options values
4219 * No need for servers anymore :), searches and downloads are OK
4220 (but no filter on search results)
4221 - add: lots of debug messages for bandwidth control.
4222 * I should probably remove from remaining_bytes the size of the
4223 TCP packet header, each time the write/read is OK.
4224 * I should optionnally include the GUIs in the control !
4226 2002/09/21: mldonkey
4227 - fix: removal of out-of-bounds accesses, not supported by Ocaml on
4229 * added check in ./configure for MacOsX 6.0 to enable CheckBounds
4230 * added -inline 10 for checkbounds to be removed for other archs (5
4232 * added Autoconf.check_string calls in littleEndian.ml and bigEndian.ml
4233 - add: Overnet works for simple queries and sources
4234 * two options disabled by default: overnet_search_keyword and
4235 overnet_search_sources
4237 2002/09/20: mldonkey
4238 - add: OverNet should now be able to add sources to eDonkey downloads
4239 (it is triggered using the "overnet" command). You need peers to
4240 access OverNet: see the end of the distrib/servers.ini file.
4241 - fix: started debugging mldonkey on Mac OS X 10.2
4242 - fix : SIGBUS in telnet "q" command.
4243 - need to check all possible array/string out-of-bounds accesses.
4245 2002/09/19: mldonkey
4246 - add: OverNet support started in donkey/donkeyProtoOvernet.ml and
4247 donkey/donkeyOvernet.ml. Can connect to OverNet peers and learn
4249 - add: new donkey command "import_temp <dir>" to import old files
4250 currently downloaded by edonkey in mldonkey.
4251 - fix: Bug #1052 (buffer overflow warnings when MLdonkey is reading
4254 2002/09/18: mldonkey
4255 - fix: Bug #420 (Wrong permission on imported files)
4256 - fix: Bugs #421 and #591 (vd: meta refresh use external ip)
4257 - fix: Bug #842 (mldonkey overwrites the modified download.ini)
4258 - fix: Bug #878 (Hidden files are shared)
4259 - fix: Bug #1053 (no warning when overwriting files)
4260 Note: / and \ in names are also replaced by _
4261 Duplicated files get a .2 , .3, etc
4263 2002/09/16: mldonkey
4264 - fix: Bug #432 (same packet is send with the same data)
4266 2002/09/15: mldonkey
4268 * Display the current upload/download rate in bytes.
4270 2002/09/14: mldonkey
4271 - add: New options in downloads.ini:
4272 * [gui_options_panel] to configure the options that are configurable in
4273 the GUI without modifying the GUI. Fix for Bug #844
4274 * [debug_net] to display more information about low-level network layer
4276 * New protocol 5 for message [Add_section_option]
4277 * Boolean and filename options have special entries
4278 * More client options in the GUI option panel
4280 * Correctly display file sources
4281 * No more Unix.write errors due to early disconnections
4282 * More ultra-peers agent types allowed
4284 2002/09/11: mldonkey
4285 - add: CyMeS server directory
4287 2002/09/08: mldonkey
4288 - fix: prevent connecting several times to the same server
4289 - fix: remove_old_servers should work again
4290 - fix: 'vo' command only display one-line options
4292 2002/09/07: mldonkey
4293 - Fix: Removed mldonkey_ suffix from names.
4294 - Add: option 'files_queries_per_minute' and 'files_queries_initial_delay'
4295 in downloads.ini to meet lugdunum master and Smurk UK requests.
4296 - Fix: edonkey private messages should work again.
4298 2002/09/05: mldonkey
4299 - fix: upload tab should work
4302 - add : upstats in the uploads tab
4304 2002/09/04: mldonkey
4305 - fix: shared files are not shared between all networks anymore (each
4306 network has its own shared file type).
4307 - add: edonkey protocol files are not hidden anymore
4308 - add: upload per shared file.
4309 - add: new upload messages in GUI protocol 4
4311 2002/09/03: mldonkey
4313 * Browse friend and simple downloads should work.
4316 - add : download a whole directory from a friend
4317 - fix : the 'goto <page>' actions, because of the new rooms and uploads tabs
4318 - add : an option to specify if we display sizes with G,M, and k suffixes
4319 - code : moved the servers, downloads and uploads status label to
4320 Gui_servers.pane_servers, Gui_downloads.pane_downloads and
4321 Gui_uploads.box_upstats so they can be updated more accurately,
4322 and not each time a message comes.
4325 - add :Now display the tree of files instead of just the list of files
4326 for the selected friend (with a new option files_auto_expand_depth)
4327 - add : new added chat room automatically selected
4329 2002/08/29: mldonkey
4330 - CVS commit on Savannah:
4331 * Ocaml 3.06 is now used to compile.
4332 * donkey/donkey.lam is not distributed anymore with mldonkey.
4333 It should be downloaded as:
4334 http://pauillac.inria.fr/~lefessan/src/edonkey/donkey.lam.SOME_MD5
4335 and copied in the donkey/ directory.
4337 where SOME_MD5 is the contents of the file donkey/donkey.lam.md5
4339 This can be automated by the configure script.
4340 - GUI protocol version 4:
4341 * new message Room_remove_user
4342 - Updates to be sent to the GUI are now stored in common/commonEvent.ml
4343 - Only one GUI can be connected to mldonkey at any given time.
4345 * Join/Leave room works with dialog and user updates.
4347 2002/08/23: mldonkey
4348 - update: ocaml 3.06 should now be used to compile mldonkey without secret/.
4349 - add: GUI protocol version 3 should work for poll.
4350 - Private messages are now received in a special (hidden) chat room,
4351 which is used to send messages to the GUI.
4352 - fix: Gui_columns has been rewritten with functors
4353 - fix: commonChatRoom.ml renamed in commonRoom.ml
4354 - add: room panel now displays both active and inactive rooms.
4355 - add: better SoulSeek support:
4356 * Searches work (no download yet :(
4357 * Join/Leave room works (no dialog yet)
4360 - add : an uploads tab (modules Gui_uploads and Gui_uploads_base)
4361 only the tab for this evening, gotta go sleeeeeeep
4363 2002/08/22: mldonkey
4364 - gui_proto.ml has been cut in guiTypes.ml (types), guiProto.ml (protocols)
4365 and guiEncoding.ml and guiDecoding.ml.
4366 - Better soulseek support
4369 - fix : memorize the size of the vpane in the friends tab,
4370 for the chat notebook.
4371 BTW, mldonkey compiled like a breeze will ocaml 3.06
4372 without patch :-) I let mldonkey change the configure
4373 script, don't want to disturb ;-)
4376 - fix : a bug closing two chat boxes instead of one
4377 - add : in chat rooms, try to get the user name and give him
4378 its own color to display his name in the messages
4379 - add : file sizes in downloads and result boxes now displayed
4380 with G(iga), M(ega) or k(ilo) suffixes
4381 - fix : scrollbar added to the chat room boxes, and the text
4382 with the messages is not editable any more.
4383 Chat rooms on direct connect work, except that kicked
4384 people are not removed from the list.
4387 - add: chat integrated in the gui; pb with the Gtk Main loop:
4388 the chat window receive no event; will investigate,
4389 or add the chat boxes in a notebook of the friends tab ?
4390 Ok, done. I had to find my way through the not really clear
4391 code of the Gui_proto module. And surprise, the code
4392 indent is really, really bad, making it still more difficult
4394 Yet to do : change and memorize the size of the chat notebook,
4395 but now i gotta go while it is not raining.
4397 2002/08/16: mldonkey
4398 - add: New command "dd <size> <md4>" originally used by mldonkey_submit.
4399 mldonkey now generates a mlsubmit.reg file that can be used under Windows
4400 to submit ed2k urls to mldonkey (thanks to equinox), and the
4401 mldonkey_submit file.
4402 - fix: Client files are now stored in a tree in the GUIs.
4403 - fix: Config/config.guess and .sub updated.
4405 2002/08/15: mldonkey
4406 - fix: "set" and "vo" should work on simple options of all networks.
4407 - add: New option "calendar" to execute commands at different hours of day.
4409 2002/08/14: mldonkey
4410 - add: The ./configure script is now able to download, compile and install
4411 locally (not as root) ocaml and lablgtk to be able to compile mldonkey.
4412 - fix: The ocaml-3.05.patch file contains the fix for the memory bug.
4414 2002/08/12: mldonkey
4415 - Olivier and Manu now work on another branch for servers rings
4417 2002/08/10: mldonkey
4418 - Move bigEndian.ml to littleEndian.ml to be correct :)
4419 - Started implementing the OpenFT plugin, using LimeWire plugin code.
4421 2002/08/09: mldonkey
4422 - Client_ip is now always recomputed to avoid keeping an old IP address after
4423 the IP changed (unless force_client_ip is true)
4424 - The md4 is only used to save a file if no other name is available
4425 - Files of new friends are correctly displayed (the client structure in the
4426 friend list was not the canonized one).
4427 - When sighup is sent, all networks are reset (disable/enable). Can be used
4428 after a reset of the DSL connection.
4429 - Removed friends are not kept as Contact any more.
4431 2002/08/08: mldonkey
4432 - Fixed bug in mldonkey_gui2 preventing removal of downloaded files.
4433 - Number of downloaded files is now displayed in mldonkey_gui. I still
4434 don't understand why so many features of the first GUI have been
4435 removed from the new GUI. Moreover, the object-oriented style makes
4436 it hard to understand and uggly to program. PLEASE, never put objects
4440 - fix : extended search button now does not appear any more in the friends tab
4441 - add : the user must confirm before cancelling a download
4442 - fix : window and global variables cleared when disconnected
4443 - fix : Detect disconnection to client in the GUI
4445 2002/08/07: mldonkey
4446 - Upload statistics are correctly displayed by GUIs
4447 - Upload is now computed in bytes
4448 - Server_state and Client_state messages are used again.
4449 - Fixed bug in TcpBufferedSocket preventing UDP packets from being sent when
4450 bandwidth control is disabled (prevent Extended Searches).
4451 - Fixed bug in Options causing Stack Overflow in convert_list
4452 - Implemented simple form of subscription in server
4453 - Predicate should now work completely in server
4454 - Number of replies to a query limited to 1000
4455 - Fixed bug in mldonkey_gui2 forcing GUI protocol 0
4457 2002/08/06: mldonkey
4458 - Rewritten server code to recognize mldonkey clients
4459 - New GUI protocol 2
4460 - Local search works again
4461 - New subscribe button
4463 2002/08/05: mldonkey
4464 - The eDonkey server now shares the list of servers with the eDonkey client
4465 - An error in the ocaml-3.05 patch has been fixed.
4467 2002/08/02: mldonkey
4468 - Fixed a bug in eDonkey saving sources for files in files.ini
4469 - Fixed a bug in the parsing of server.met files downloaded from the WEB
4470 (there was a "made by ..." at the end !!)
4471 - load_url now supports HTTP 302 redirections
4472 - Fixed a bug to connect to friends at startup
4474 2002/08/01: mldonkey
4475 - Fixed a bug in the GUI protocol version 0
4476 - More fields in commonFile.file_impl. Download rate is computed the same
4477 way for all networks.
4478 - LimeWire download bug fixed (3 mp3s loaded for test)
4480 2002/08/01: mldonkey
4481 - Fixed bug with multiple files displayed in the GUI
4482 - New GUI protocol 1 containing Client_stats
4484 2002/07/31: mldonkey
4485 - Old gui2 compiles normally and works.
4486 - SendMessage (-1, PrivateMessage (num, string)) is used to send a private
4487 message outside any room.
4489 2002/07/30: mldonkey
4490 ********* Ocaml 3.05 should now be used to compile mldonkey ********
4491 - The patch to the ocamlopt compiler is not required anymore.
4493 2002/07/29: mldonkey
4494 - Re-included old gui as gui2/ and mldonkey_gui2. Not yet working.
4495 Let the user choose until mldonkey_gui is working properly.
4497 2002/07/27: mldonkey
4499 o Only connected servers are normally displayed.
4500 o New button to display all servers.
4503 - GUI: Extended search button only available in the result box of the
4505 - GUI : fixed font for the console
4507 2002/07/24: mldonkey
4508 - Added GUI counter for better protocol compression.
4509 - Removed user_remove function
4511 2002/07/23: mldonkey
4512 - Bug fix in Ocaml weak hash tables
4513 - First file downloaded on DC (yeah !!)
4515 2002/07/21: mldonkey
4516 - Fixed a bug in the GUI protocol
4517 - Improve timers behaviors
4519 2002/07/16: mldonkey
4520 - Upload should be OK in Direct-Connect
4521 - CDDB: research is possible in index. building the index takes at least
4522 600 Mo of RAM ... maybe some work to compress it.
4524 2002/07/15: mldonkey
4525 - New structure network_info
4526 - Direct-Connect: allow other clients to browse our client
4527 - CDDB: use_tags is able to index a freedb database. take about 300 Mo for
4528 the full indexed database. need to build a server now.
4529 - Donkey: fixed a buf in the protocol that removed shared files from shared
4532 2002/07/14: mldonkey
4533 - New env variable MLDONKEY_DIR
4535 2002/07/13: mldonkey
4536 - More options in alternative networks.
4537 - ./configure script accepts a --disable-multinet option.
4538 - New option -check_impl to display unimplemented methods.
4539 - New behavior for computing the downloaded size in donkey.
4541 2002/07/11: mldonkey
4542 - Upload on edonkey is priviledged, thanks to the upload_power option.
4543 Done by giving more upload to some connections in TcpBufferedSocket.
4545 2002/07/10: mldonkey
4546 - Protocol between GUI and Core completely rewritten. No more Ocaml specific.
4547 Other GUIs are encouraged to move to this new protocol.
4548 - network-specific URLs are supported:
4550 ed2k://|server|ip|port|
4551 ed2k://|friend|ip|port|
4552 dc://|server|ip:port|
4553 dc://|friend|ip:port|
4554 - Client browsing in Opennap.
4556 2002/07/04: mldonkey
4557 - Better types for result, client, user and file in LimeWire
4559 2002/07/03: mldonkey
4560 - Better Opennap support
4561 - Should no more be 'too many pending searches'.
4562 - Better types for result, client, user and file.
4564 2002/07/02: mldonkey
4565 - Per network options better supported (use "set" command with a prefix).
4566 - One step towards soulseek implementation.
4567 - Started implementing 'disable' methods.
4568 - Using Weak hash tables for all common modules.
4570 *** 2002/07/01: in holidays :) no network access for two weeks ...
4572 2002/06/30: mldonkey
4573 - HE3 compress/decompress code completely working for DirectConnect
4574 - Can download file list in DirectConnect (not display it)
4575 - Client IP correctly detected.
4577 2002/06/29: mldonkey
4578 - Added columns configuration for users in GUI.
4579 - Added message BrowseUser from GUI to Core and user_ops.op_user_browse_files.
4580 - Communication between clients in Direct Connect started.
4581 - User information from Direct Connect displayed in GUI (admin/link/bytes)
4583 2002/06/28: mldonkey
4584 - Fixed several problems in WEB/telnet interface
4585 - Added enable(disable) networks menu in GUI (disable not implemented):
4586 networks can be started from GUI. New message EnableNetwork from GUI.
4587 - Added display networks menu in GUI: servers and results from a network
4590 2002/06/27: mldonkey
4591 - Started using Weak Hashtbl in common/ structures to avoid memory leaks.
4592 - The GUI displays correctly eDonkey, Open-Napster, LimeWire and DirectConnect.
4593 - Lots of debbugging messages have been removed.
4596 Complete change of the architecture. mldonkey should now support multiple
4597 peer-to-peer networks. Currently, download is possible from:
4599 * Audiogalaxy support: works great (oups, not useful anymore :(
4600 1) Must set 'enable_audiogalaxy' to true in downloads.ini
4601 2) Start mldonkey. It should create 'audiogal.ini'. If you don't have any
4602 audiogalaxy account, create an account: go on http://localhost:4081/
4603 (if you are running mldonkey on localhost), and create it.
4604 3) Stop mldonkey. Edit audiogal.ini. Set the 'login' and 'password'
4605 options from your account.
4606 4) Restart mldonkey. Go on http://localhost:4081/ to choose files to
4609 * LimeWire bridge. works great.
4610 1) Must set 'enable_limewire' to true in downloads.ini
4611 2) It should automatically connect to several ultra peers.
4612 - Recover downloads works
4614 * Open Napster support. Seems to work.
4615 1) Must set 'enable_opennap' to true in downloads.ini
4617 * Direct Connect support. Not working yet.
4618 1) Must set 'enable_directconnect' to true in downloads.ini
4619 2) You can connect to some hubs and search for files. Download
4620 is not yet working, nor sharing, so that you will probably be
4624 If you want to test some of these networks, edit the downloads.ini to
4625 enable them. There are a lot of debugging messages (pipe to /dev/null,
4626 don't kill the terminal). Most telnet commmands should work, but it is
4627 not sure. In the GUI, use the File->Settings->GUI->Columns panel and,
4628 for each type of structure, add the Network column to see in which
4629 network a server or a file is located.
4631 * Improved server implementation (enable_server option). Not working yet.
4632 * Started implementing freedb bridge. Not working yet.
4633 * replace Sys.rename with Unix2.rename (to allow cross-device moves)
4634 * brand new GUI : choice of columns, icons, external chat utility, support
4635 for custom searches. See file ~/.mldonkey_gui.ini for changing icons
4636 and keyboard shortcuts. Searches skeletons are defined in the
4637 searches.ini file in the directory where you launched the mldonkey core.
4641 * Compaction forced every 'compaction_delay' hours (default is 2).
4642 * File age computed for files smaller than one chunk. Better downloads for
4644 * Servers sending extended search results are remembered, and immediatly
4645 asked if their files are downloaded.
4646 * Predicates in Indexer should work in most cases.
4647 * Fixed #100833: new options 'http_bind_addr', 'gui_bind_addr',
4648 'telnet_bind_addr' and 'telnet_bind_addr'.
4649 * Started implementing 'use_tags', a program to rename mp3s from tags (and
4650 maybe from freedb, someone interested ?)
4651 * New option 'propagate_sources' to allow mldonkey to propagate sources
4652 to other peers. When enabled, send far fewer messages than in 1.15.
4653 * Fixed #100870: WEB interface can be configured through 'html_header',
4654 'web_common_header' and 'vd_reload_delay'
4655 * GUI buffer size increased. Can be set by 'interface_buffer' in
4657 * Fixed bug making mldonkey use 100% CPU for long periods.
4658 * Fixed option name for 'update_server_list'
4659 * New options 'max_sources_per_file' to limit the number of sources for
4660 a given file. One source is removed each time a new source is added
4662 * New command 'id' to display ID numbers for connected servers.
4663 * 'client_buffer_size' set to 500000 by default.
4664 * Fixed bug in ocaml patch that made open_mldonkey never finish downloads.
4667 * Started implementing mldonkey_s (eDonkey compatible server)
4669 - Should fit in 640x480 screens.
4670 - Server can be specified by ip:port in Add Server entry.
4671 - Removed some non-tailrecursive functions.
4672 * Core acts now with all (direct) clients as a server to diffuse sources
4673 for files. Indirect mldonkey clients can also receive information.
4675 - New option 'customized_searches' that can be used to add new
4676 queries in the WEB interface (see new option file searches.ini
4678 - Improved searches (work also in the GTK GUI):
4679 * In the keyword/artist/title/album fields, a '-' in front of
4680 a word means 'without'. Words separated by
4681 spaces must appear in the reply.
4682 * In the format field: you can specify several formats, separated by
4683 spaces. A '-' in front of a format means you don't want that format.
4684 - New options 'web_header' and 'web_header_frame' to customize the header
4685 displayed by the Web interface.
4686 - Generate correct HTML with HEAD and TITLE :)
4687 - Downloads can be sorted by name/percent/downloaded/size/rate.
4688 - Paused downloads are correctly displayed.
4689 - Use tables instead of spaces (for non-fixed fonts).
4690 - Added option 'use_html_frames'. When frames are enabled, clicking
4691 on a result to download will only modify the second frame.
4692 - Checklist of downloads and results can be activated/desactivated with
4693 the option 'html_checkbox_file_list'.
4694 - The number of days since the file was last seen complete is now displayed
4696 - New option 'file_completed_cmd' for a command which is called when
4697 a file download is completed with as arguments:
4698 <filename on disk> <md4> <size> <names on the edonkey networks>*
4699 - Started moving local indexation from mldonkey to an auxiliary program,
4700 controled by options 'local_index_find_cmd' and 'local_index_add_cmd'.
4701 See the 'Using auxiliary programs for local indexation' section in
4702 the help (in progress, doesn't work).
4703 - New command line option -client_ip that can be used to force the
4704 IP used by mldonkey (if you have a firewall). Be careful with
4706 - Delay between md4 computation can be set by 'compute_md4_delay' option.
4707 Chunks downloaded improve to reduce long md4 computations.
4708 * Most problems with ed2k:// links should be fixed (/ at the end, and
4709 spaces in the middle). MLdonkeySubmit is distributed for Konqueror users.
4710 * Improved implementation of indexation. Documents description are
4711 stored on disk. Different choices of indexation.
4712 * Server black list: 'bs <ip1> <ip2> ...' in console to add IPs to the
4713 server blacklist. Servers on this black list are eventually removed,
4714 and will never be added again.
4715 * New option 'master_server_min_users' that prevent mldonkey from remaining
4716 connected to a server with too few users.
4717 * New option 'dont_update_server_list' to disable automatic update of
4720 - New command 'remove_old_servers'
4721 * New (less-aggressive) management of sources:
4722 - New option 'max_source_age' (in days) to remove old sources.
4723 - New option 'max_clients_per_second' to prevent bursts of connections.
4724 * Faster computation of md4s for i486/i586/i686 Linux systems.
4726 - #100662: only valid server IPs are accepted.
4727 - Use IP returned by getsockname instead of the one from gethostbyname.
4728 - #100761: new option 'update_server_list' to choose whether you want
4729 mldonkey to automatically add new servers to your server list.
4730 - Fixed bug preventing sharing of in-download files after restart.
4731 - Fixed bug making history.met always increase.
4734 * Bandwidth is now controled by the 'max_hard_download_rate' and
4735 'max_hard_upload_rate' options. Old rate options are obsolete.
4736 * All simple options can now be set by arguments on the command line (use
4737 -help to show arguments).
4739 - Removed non-tailrecursive function in options.ml causing segfault when
4741 - Connected clients without names in GUI should not appear anymore.
4742 - Remove 2 minutes timeout for queued clients.
4745 * Annotations on files in file 'comments.met'. Commands 'comments <filename>'
4746 to load a file, and 'comment <md4> <comment>' to add a new comment.
4747 Such comments could be downloaded from web sites (sharereactor.com).
4748 * New option 'web_infos' and new command 'add_url' on console: allow
4749 to download a file from the WEB automatically everyday (or less
4750 frequently). Currently, only server.met and comments.met files are
4753 - New config file in $HOME/.mldonkey_gui.ini with GUI options
4754 - colors added in lists (see .mldonkey_gui.ini)
4756 - File locations are updated.
4757 - Improved protocol to decrease bandwidth
4758 - Comments are displayed in searches, and can be added in contextual menu.
4759 - Shortcuts can be configured by options.
4760 * Mailer accept non-canonnical addresses.
4761 * Option 'verbose': '#' for download, 'U' for upload, and other messages.
4762 * When possible, find extra names for files in history.
4764 - New command 'close_fds' to close all open files, to free space on disk
4766 - New command 'pause' and 'resume' to pause and resume downloads (use
4767 arg 'all' to apply to all files).
4768 * Some control on how many connections can be opened per minute.
4769 * Better scheduling of compaction (new option 'compaction_overhead')
4770 in both core and GUI that caused delay when exiting.
4772 - Remove block change causing many 'exceeding block boundaries'
4773 - history.dat changed to history.met, using more secure marshaling.
4774 - OVERFLOW with GUI should not appear anymore.
4775 - Compaction makes GUI memory usage better.
4779 - Remove error 'bad file descriptor' when saving files.
4780 - Remove possible infinite loop in upload function.
4783 * Option 'shared_directories' to specify other directories where files to
4785 * Setting 'telnet_port', 'http_port' or 'gui_port' to 0 disables the
4786 corresponding access.
4788 - Sort results by size in vr.
4789 - When 'd' fails with Already_done, you can use 'force_download' to force
4790 an already downloaded file to be restarted.
4791 - New command 'dllink' taking an ed2k URL to download as argument.
4792 - Command 'set' can be used to set the allowed_ips option:
4793 set allowed_ips '127.0.0.1 128.91.255.255'
4794 255 is for networks.
4795 - shorten names in 'vd' output (see 'max_name_len' option).
4797 - New Cancel links in 'vd' output.
4798 - New 'Complex Search' link in interface.
4799 - 'View Options' output can be edited to modify options.
4801 - The GUI tries to connect to the core every second until it succeeds.
4802 - Corrected MD4 columns
4803 - In search panel, 'Max hits' combo set the maximal number of replies
4806 - Don't add twice the incoming dir to shared file names.
4807 - Cross-partition moves fail, but filename is renamed in temp dir.
4808 - Limited open fds for files to 50 (doesn't limit shared files
4809 and downloaded files).
4810 - Execute entry on WEB interface always displayed.
4811 - Removed a timeout closing all client connection after 2 minutes.
4812 - Shared files are opened in read-only mode.
4815 * Default timeout for server connection set to 5 for faster connection.
4816 * Options are now divided into four configuration files: downloads.ini,
4817 servers.ini, friends.ini and files.ini.
4818 * Console: better display of downloads.
4819 * Verification of IP addresses for admin ('allowed_ips' option).
4820 * WEB interface: added pragma no-cache.
4821 * Keep checking servers in the background.
4822 * GUI: Auto-resize is now delayed. Default selection
4823 mode is EXTENDED. Contextual menu items to switch between
4824 auto-resize/manual resize and EXTENDED/MULTIPLE selection.
4825 * Send a mail when download is finished. You must complete the
4826 'smtp_server', 'smtp_port' and 'mail' options.
4827 * Bug fixes: partial page in WEB interface fixed (often with vr).
4828 Removed two minutes timeout on good client connections.
4829 NoSpaceLeft causes pause in download.
4832 * Bug fixes: fixed bad md4 computation of the first chunk, preventing
4833 completion of downloads.
4834 * New command 'recover_temp' to recover all lost files from the temp
4836 * See http://www.freesoftware.fsf.org/mldonkey/ for porting mldonkey on new OSes.
4839 * Remove use of the 'mmap' system call.
4840 * Better management of delays between connection attempts.
4841 * Local searches use minsize/maxsize information.
4842 * More information on availability on WEB/console interface.
4843 * Small improvement in MD4 computation. Shared files MD4s are saved in
4844 a 'shared_files.ini' file to avoid computating them again.
4845 * Filters on replies: set the 'filters' option to a string containing
4846 sub-words you want to remove, separated by spaces.
4847 * Maximal download rate can be specified in 'max_download_rate' option.
4848 (need probably to be rewritten more carefully).
4849 * Bug fixes: files greater than 9mb in incoming/ can now be shared,
4850 ftruncate replaced by lseek (for vfat FS), multiple connections to
4851 the same client fixed.
4854 * Exchange of sets of sources between mldonkey clients.
4855 * Started implementing chat between friends.
4856 * GUI allows adding friends by specifying IP and port. New
4857 'Connect friend' menu. Better properties of files.
4858 * New menu item 'preview' in GUI, associated with option 'previewer'.
4859 * New menu 'Select All' in lists.
4860 * Bug fixes: in mp3 tags edition, in connected servers count, in
4861 displaying friends files, in passive connections.
4864 * History of seen files. New commands: 'ls' for local search on the history,
4865 of search on servers, 'clh' for clear local history. New options:
4866 'use_file_history' to allow history on files, 'save_file_history' to
4867 save the history on disk. For now, search only by words (not size).
4868 * Authentification by the 'auth' command on the telnet client.
4869 * Bug fixes: servers disconnected viewed as connected.
4872 * UDP protocol implemented: extended searches to all servers.
4873 * Improved HTTP interface (port 4080).
4874 * Limitation on minimal upload dropped to 1 kB/s.
4875 * Fixed bug preventing queries on multiple words.
4878 * Improved WEB interface (download files by clicking).
4882 * Upload can be disabled temporarily, if your client has been running long
4886 * max_upload_rate is not modified automically anymore.
4887 * command-line client available from the GUI.
4890 * New command 'set' in command-line client to change options values
4891 * Command-line client accessible from the GUI or any
4892 WEB browser (at http://localhost:4080/)
4895 * Upload/download works
4897 * Complex queries works
4898 * Command-line interface works
4899 * Graphical interface works
4900 * Import old config works