The release mechanism was changed in a way that minor updates
will not get a release tag in CVS, also the version number reported
by MLDonkey will stay the same.

Patches done after the last release are experimental,
please test carefully and report your findings.

All numbers mentioned here can be found as patches on
http://savannah.nongnu.org/patch/?group=mldonkey

To compile MLDonkey on MinGW follow this guide:
http://mldonkey.sourceforge.net/Windows#MinGW_Installation

ChangeLog
=========

2006/09/17 version 2.8.1 = tag release-2-8-1
5401: Fix question whether to compile Ocaml with some bash versions (pango)
5400: Allow use of Ocaml 3.09.3, keep 3.09.2 as default
5399: EDK, Telnet: Fix and clarify message when starting a search (schlotter)

2006/09/16
5397: EDK: Disable broken option emulate_sparsefiles
5395: Improve max_hard_up/download_rate computation code (pango)
5380: BT: Add file_num to certain log entries (jave)
5392: fix typos in help texts (schlotter)
5394: Fix max_hard_up/download_rate computation
- crashed on Windows when max_hard_upload_rate = 0
- when max_hard_upload_rate = 0 max_hard_download_rate was badly computed
-------------------------------------------------------------------------------
2006/09/14 version 2.8.0 = tag release-2-8-0
5390: Distinguish between charsets zh_cn and zh_tw
5389: Fix verify_chunks (pango)
5388: Small log update

2006/09/13
5386: Telnet: Longhelp cleanup
5385: Command mem_stats: verbosity 0 is default now
5360: patch removed, it does not fix the bug
5383: BT: Detect new client types (thx to pango)
- fix Mainline detection for two-digit version numbers
- fix Tornado detection
- fix broken Bits on wheels detection
- detect Rufus
- detect Bitspirit v3
5384: BT: Fix serious bug causing bad performance introduced
      by abstract bitmaps patch (pango)

2006/09/07
5369: Portinfo: fix String.length problems in Telnet (5369_2.patch)

2006/09/05
5294: HTML: Fix sources display for Gnutella/G2/Fasttrack/Filetp
      broken by patch #5294 (thx to z)
5368: Remove unused code from md5_c.c & os_stubs.h
5371: EDK: Support for eMule comments (read-only)
- new option html_mods_vd_comments to enable column in HTML, vd
- comments are shown in javascript popups and vd #num
5369: New command portinfo, display used ports during start-up

2006/09/04
5370: Correct option_versions defaults, remove commented EDK code

2006/09/03
5367: EDK: Use random default for ED2K_port instead of fixed 4662
- existing ini files are never changed
- after donkey.ini is created the value is not changed automatically
5366: HTML: Remove obsolete EDK history links
5365: Accept FTP URLs on command line
5364: Update options descriptions, remove obsolete options, clean log
5363: Limit max_hard_download_rate when max_hard_upload_rate < 10
- upload >= 10    -> unlimited download
- upload < 10 > 3 -> download limited to upload * 4
- upload < 4      -> download limited to upload * 3

2006/09/01
5361: Faster filenames_variability computation (pango)
5315: EDK: Change some internal server data to option values
5354: New option: max_filenames, maximum number of different filenames
5355: Move buffer_writes_delay timer from Donkey to Global module
5344: Small code optimization for stderr warnings (thx to pango)

2006/08/28
5341: New command: filenames_variability
- compute differences between the filenames of a file to detect fakes
  the higher the value, the more likely its a fake
5335: Fix small bugs in "!" command (execute shell commands)
5334: HTML: Display edk2 links in search results
5333: Clean logging (Swarmer, Fasttrack, Gnutella)
5332: New command option: rem blocked - remove all IP blocked servers
5330: Configure: Check MinGW version, at least 3.10 is needed (Schlumpf)
5329: some configure improvements and cleanups (Schlumpf)

2006/08/26
5320: some html_mods tables & css improvements (Schlumpf)
5322: Use CXXFLAGS present at configure when compiling (smimram)

2006/08/21
5319: Configure: New option --enable-minimum
- Compile MLDonkey with Donkey only, without gd, magic, bzip2, sui
5304: cleanup donkeyOptions.ml (whitespace, tabs, comments) (Schlumpf)
5303: cleanup btOptions.ml (whitespace, tabs, comments) (Schlumpf)
5302: cleanup commonOptions.ml (whitespace, tabs, comments) (Schlumpf)
5318: Fix wrong buildinfo configure args with autoconf 2.60
5317: Compile fix for GTK1 newgui in addition to patch 5310

2006/08/16
5309: Increase reserved number of FDs from 20 to 40 for dynamic libs
5310: EDK: Request filelist from friends only when requested,
      disable automatic download (pango)
5312: GTK2 GUI: Fix histograms (su_blanc)
5313: CryptoPP: Check for g++ capabilities

2006/08/15
5308: CryptoPP: Fix infinite loop when re-creating private key fails
5307: CryptoPP: Deactivate compiler option -momit-leaf-frame-pointer
5300: Fix iconv compile bug on Eisfair
5299: Support magicdb in $MLDONKEY_DIR/magic/magic if present
      this location is used in addition to the defaults of libmagic
5277: MinGW: use new gettimeofday() from mingw-runtime-3.10 (Schlumpf)

2006/08/12
5298: Some internal changes moved from multiuser patch to CVS
5285: GUI: Self-test en-/decoding only down to protocol 24 to solve
      crash when system date is wrong
5297: Force conversion of allowed_ips to IP blocklist when $MLDONKEY_DIR
      and ini files are created for the first time
5296: Telnet: Fix filesize display for 1kb, 1mb, 1gb values

2006/08/11
5295: Hard-coded minimum of 600s for min_reask_delay

2006/08/10
5294: Clean logging, small "if .. then true else false" function rewrites

2006/08/09
5288: EDK: Improve log when sharing is prevented due to inconsistent filesizes
5287: Swarmer: Remove obsolete option file_bitmap from files.ini
5286: Swarmer: (pango WIP10a)
      Fix commit of merged downloads + internal optimizations
5283: EDK: Fix IP display in GUIs for some firewalled clients

2006/08/08
5281: BT: Allow startbt to use URLs without extension ".tor" and ".torrent"

2006/08/06
5275: Change functions called when SIGHUP is sent
- BT: stop_all_bt is called to improve disconnect recognition
- instead of closing all sockets now all clients+servers are disconnected,
  GUIs will not be disconnected anymore
5276: web_infos, part II: Update server.met URL
- fix defaults and server list URL

2006/08/05
5276: web_infos: Update server.met URL
- http://www.jd2k.com/server.met does not exist anymore,
  now using http://www.gruk.org/server.met.gz again

2006/08/04
5272: Fix OS-detection bug in Unicode conversion when committing files
- should solve file naming problems on non-UTF8 systems

2006/07/29
5269: Fix maximum filename length recognition on Mac OS X

2006/07/28
5268: Swarmer: Fix Division_by_zero when starting downloads
      of files smaller than 200 bytes

2006/07/27
5266: EDK: New default 600s for upload_timeout, 60s was too short
5265: EDK: New option keep_sources, false to disable use of file_sources.ini
5264: allowed_ips: Support CIDR address/mask format and IP ranges (pango)
* old syntax is converted to CIDR format:
  - 192.168.000.255 -> 192.168.000.000/24
  - 192.168.255.255 -> 192.168.000.000/16
  - 192.255.255.255 -> 192.000.000.000/8
  - 255.255.255.255 -> 000.000.000.000/0
* new possible syntax, to calculate: http://www.subnet-calculator.com/cidr.php
  - CIDR, like 192.168.0.106/30 (192.168.0.104 - 192.168.0.107)
  - IP ranges, like 192.168.1.123 - 192.168.1.133

2006/07/24
5262: Small compile patch for Mac OS X 10.2.8 (Jaguar), small log fix
5260: Enable logging to syslog, update syslog.ml to version 1.3
* New option log_to_syslog, default false
  Post log messages to syslog. This setting is independent of log_file
  and its associated commands, therefore close_log does not stop log to syslog.
  Its therefore possible to log to syslog and log_file at the same time.
5261: MinGW: Fix compile bug with mingw-runtime-3.10
5259: Use Charset functions to determine extention of
      mlnet_strings file if $LANG is not set

2006/07/21
5257: HTML: Let allowed_ips allow connections from IPs part
      of IP blocklist for HTML interface only
5258: Add some files to src/utils/lib for later usage
* from pango
  ./src/utils/lib/levenshtein.ml
* from http://packages.qa.debian.org/s/syslog-ocaml.html
  ./src/utils/lib/syslog.ml
  ./src/utils/lib/syslog.mli

2006/07/20
5256: GTK1 GUIs: Compile fix for patch 5253
5253: Commit: Remove spaces at end of filename on FAT partitions,
      respect max_name_len value for all filesystems (pango)
5255: EDK: New client type VeryCD (compatibleclient 240)
5254: EDK: New default 60s for upload_timeout
5247: Update camlzip library to version 1.02 (Xavier Leroy)
- 64-bit incompatibility fixed
- Better support for large ZIP files (> 2 Gb)
5252: Update config.guess and config.sub to version 2006-07-02
5251: HTML: Re-implement motd_html by popular demand
* This patch brings motd_html back in addition to the current welcome message,
  default is empty.
5250: EDK: Print High/LowID in cleartext for command "id", fix LowID display
5249: Remove obsolete files from src/utils/[cdk;lib] and tools/
5246: HTTP: Print 401 error when login was unsuccessful

2006/07/17
5243: HTTP: Print 403 error for requests blocked by allowed_ips

2006/07/15
5203: Swarmer: Anti-fragmentation (pango, antifrag_v7)
* Each file is divided into blocks saved in new option
* file_disk_allocation_bitmap in swarmer section of files.ini
* Blocksize is computed like this: file_size / 200, rounded up to full
  megabytes, if bigger than 10MB: 10 MB are used as maximum blocksize.
  Preallocated blocks are marked file_disk_allocation_bitmap option.
* Blocks already fully preallocated on disk are prefered for downloading.
  That way one can get antifragmentation benefits without preallocating
  too much space, specially for downloads with small chunks.
* If the block about to be filled with data for the first time its read/written
  back to disk to allocate the space.
  Set verbosity to "verb" to enable logging of preallocation.
5242: GTK2 GUI: Remove unnecessary linefeed in console,
      remove some log and compiler warnings
5239: GTK2 GUI: Fix result sorting,
      update search results instead of double display (su_blanc)

2006/07/14
5222: Improve log output when HDD is full
5214: Gettext: Improve translations
* added ./distrib/i18n/mlnet_strings.de_DE.utf8 for testing purposes
  startup messages should appear in German now, more strings have
  yet to be translated, help welcome for all languages.
5238: Fix HDD space checks on CFS mounts
5235: Lock config_files_space.tmp and delete unused file on startup
5232: GUI: Fix decoding bug for Gnutella/G2/Fasttrack search results (zet)

2006/06/29
5213: Swarmer: Commit only primary downloads (pango)
5212: Fix DNS lookup of localhost (pango)
      SIGTERM & SIGINT support for GTK2 GUI

2006/06/27
5207: Remove some obsolete options: html_mods_vd_queues, ED2K-initial_score,
      ED2K-max_dialog_history, ED2K-immediate_master
5206: Remove Kiss DP500 support
5200: BT: Do not start downloads if no usable trackers are found in file.torrent
      MLDonkey only supports http:// style trackers, not udp:// or dht://
      Deactivated http:// trackers are better marked in HTML,vd #num
5202: Remove mlchat and outdated IM (instant messenger) code
      Remove outdated files from ./packages/windows
5204: Cleanup longhelp (anhi)
5205: Telnet: Fix another UTF8.length exception in search results

2006/06/22
5199: BT: Fix BT_client_uid changing between core start (orbit)
-------------------------------------------------------------------------------
2006/06/19: version 2.7.7 = tag release-2-7-7
5196: IP: Store IPs with two int values instead of four to save RAM (pango)
5195: BT: Log tracker error messages in UTF-8
5194: HTML: Print warning on opening page when enable_servers is set to false

2006/06/18
5191: HTML: remove sysinfo on opening page & option motd_html
5192: Fix deactivation of verbosity "gui"
5163: Configure: CVS SCM support for Mac OS X 10.3 (gstat)

2006/06/17
5158: HTML: Use table for printing buildinfo and runinfo data (schlumpf, pango)

2006/06/16
5187: New option: BT_import_new_torrents_interval,
      ignore Thumbs.db & desktop.ini in directory lists
5186: GUI: Send only non-empty real_startup_message string

2006/06/15
5156: HTML, improve Options output (schlumpf)
* new command html_mods_use_js_helptext (true|false)
  to change display of helptext between javascript popup`s and html table
* fix some padding and border bugs
* add "toggle js_helptext" button to 'vo' and 'voo' to directly toggle the style

2006/06/12
5061: New option small_files_slot_limit to push release of small files (pango)
      all files below the configured file size (default 10kb) are uploaded
      through one reserved slot
5144: Increase default max_upload_rate to 10 (schlumpf)
5177: HTML, Options: update display after changing options (schlumpf)
5176: Swarming: Change error message text and verbosity for BAD WRITE
      BAD WRITE is not really an error, MLDonkey just receives unwanted data
5175: GTK1 oldgui: Last compile fix for abstract verification bitmaps (pango)
5174: Abstract verification bitmaps:
      compile fixes for GTK1 GUIs, move generic code to CDK (pango)
5173: Swarmer: Small fix for merged downloads (WIP7b') (pango)

2006/06/11
5172: EDK: Log error which causes pausing a download
5171: New command group "Driver/Users",
      print help text for "Bad number of arguments" error message
5170: Fix default max_indirect_connections, minimum is 30
5169: HTML, Options: add description to option section buttons,
      remove 'save' button (schlumpf)
5168: Global module to abstract verification bitmaps (pango)
5167: Swarmer: Fix saving ini data for merged downloads (pango)
5166: Swarmer: New module to abstract verification bitmaps (pango)

2006/06/07
5164: CommonSwarming: Pangos WIP5e'
* When cutting a range, the reciprocal link of the range after the right part
  still references the left part
* When cutting a block in two parts can before empty, but then can also before
  complete (if they have no ranges left)
* Added bad_writes_is_back patch
* When find_range can only find ranges already being downloaded, it now first
  does a quick check to see if there's no other, probably more interesting,
  blocks remaining. If so, it forces a block change (report no more ranges left)
* While it's a good feature in itself, it's probably a workaround for a bug in
  select_block (?); It seems that blocks oversaturated with sources happen way
  too often (4 or 5 sources on a single range shouldn't happen).
* Compute the size of unselected ranges in each blocks, so that sources don't
  "rush" on blocks just left by a source.
* Some BAD WRITEs seems to happen because we forget ranges we requested
  (when switching blocks ?)
* Replaced call to clear_uploader_ranges by a call to clear_uploader_intervals
  in BitTorrent support Choke message handler.
5063: EDK: remove duplicate entries in shared_files_new.ini (pango)
5160: Remove stale avifile.ml, clean commonMultimedia logging
5159: Compute magic values only when needed
5157: add some line breaks to option help text for shorter lines (schlumpf)

2006/06/01
5153: New command: force_web_infos to manually download web_infos URLs
5152: Do not connect friends from disabled networks
5151: Options: New stringvalue functions needed for multiuser support
5150: Log: Fix log when server list is empty in check_blocked_servers

2006/05/31
5149: Log: Some additions for commonSwarming
5148: Mail: Fix for multiline SMTP responses (zet)
5143: HTML/Telnet: Country codes for servers
5147: G1/G2: Display proper filename (and therefore support rename) (zet)
5145: EDK: Fix md4 hashing when filesize is an exact multiple
      of edk chunk size, MLDonkey is now eMule-compatible (zet)

2006/05/30
5141: Swarmer: New option swarming_block_selection_algorithm (pango)
* Allow to choose swarmer block selection algorithm at runtime.
  - Algorithm 1 is the current default algorithm
  - Algorithm 2, from WIP3o patch, should try harder to complete partially
    downloaded chunks, specially with Bittorrent. It was previously
    reverted because of unknown performance problem (slower download ?)
5140: Update .cvsignore files (pango)
5138: Catch ip banned exception (zet)
5137: HTML: Fix display of file magic values with '
5136: FileTP: fixes and enhancements (zet)
* Add "FTP-chunk_size" option (0 = no chunks = download full file at once)
-- A chunk_size would be required if downloading from > 1 source
* Add FTP downloads to bandwidth controller (for stats & speed limiter)
* Support FTP sites that do not buffer input (MS FTP)
* Add support for user/pass (http://user:pass@site or ftp://user:pass@site).
  This also adds user/pass support to http_client.
* Error codes from HTTP (ie: 404) and some from FTP are supported (530 sometimes
  signals a retry, sometimes a login failure so a regex was used (lftp)).
  Downloads are paused when a hard error is received (and noted in the log).

2006/05/25
5131: New option gui_log_size: number of lines for GUI console messages
5129: HTML: Display client_bind_addr in options menu
5124: Log: Login messages can be disabled with verbosity "no-login"
5130: CommonSwarming: Pangos WIP4a'
thanks for testing goes to SchAmane, CruX, jave (forgot someone?)
That's a huge patch over CommonSwarming module (whose job is to select what data
to ask from connected sources, and the merging of received data),
I hope I'm not forgetting anything important :
* first, it's a mantainance patch; Lots of code have been reworked for
  readability and compactness (iterators...), functions grouped together,
  sometimes renamed to more descriptive names. Lots of comments have been added,
  including the description of invariants I've found, and a nice ASCII art
  schema of the swarming datastructures ;)
* naming has been made more consistant, to differenciate chunks (from each
  network view) from blocks (internal to swarming), and intervals (list of
  int64 * int64 beggining/end offset pairs)
* Support for bitmaps encoded as strings (AvailableCharBitmap) removed, since
  it's no longer used anywhere; use the more compact AvailableBitv instead
* Removed range_current_begin from ranges, it's enough for a range to have a
  beginning and a end ;)
* Rewrote compute_block_num to have precise preconditions, and algorithm proof
* Added some assertions to better enforce invariants
  (on verification bitmaps, for example)
* Allocation of ranges is now delayed until the very last moment, instead of
  when a chunk starts being downloaded. Main benefit (beside small memory gain)
  is that requests for different ranges sizes can be fulfilled at any time.
* Modified received function so that no BAD WRITE message can happen anymore:
  condition when data that does not start from the beginning of a range is
  correctly detected and data discarded
  (since ranges cannot handle that case anyway)
* Rewrote a much simpler version of present_intervals
* Rewrote block selection algorithm for readability and flexibility; select_block
  simply "folds" over all available blocks, using compare_choices function to
  keep the best available one(s). May need some more CPU (no fast exit)
* Fixed donkey uploaders calls when disconnected
* Reenable the copy of identical chunks between files. Opportunities for copies
  are checked every 5 minutes.
* Made file writing a bit smarter in Unix32 module so that writing zeroed chunks
  (as can happen a lot with chunks copying) on an otherwise sparse temp file
  does not allocate disk space. A bit hackish.

2006/05/23
5121: EDK: Remove obsolete option emule_compression
5122: improve block_list output and runinfo ip blocking (schlumpf)
5123: Fix Invalid_argument("UTF8.length") bug in HTML, down-/uploaders
-------------------------------------------------------------------------------
2006/05/21: version 2.7.6 = tag release-2-7-6
5119: HTML, Options: Include Wiki link in options names
5117: Telnet: replace "avail" by "last seen"/fix non-ASCII-filename column width

2006/05/20
5118: Log: Correct prefix for donkeyClient.ml
5116: HTML: Fix javascript popup in search results for Opera (dextarr)
5112: Fix lprintf_nl (search/replace ()'s) (zet)
5113: Fix config/wget.c (zet)
5111: Configure: Fix $SOURCE_DIR broken since patch #5095
5109: New option: pause_new_downloads
- Set to true all new downloads will be paused automatically.
- This option is automatically set to false on core start.
EDK: Disable ED2K_connect_only_preferred_server if not preferred server is
     found, this check is done once per minute

2006/05/19
5107: Configure: Check for MAGIC_ERROR in magic.h
5106: BT: only send stop once on exit and then wait for success (Amorphous)
5105: BT: Avoid starting torrent which has the same name
      as a currently downloading torrent

2006/05/18
5097: HTML: Improved DL multiline input button (jave)
5103: Fix compile bug in magiclib_stub.c on Solaris & NetBSD

2006/05/17
5101: G2: Gnutella2 fixes/log updates (zet)
- Gnutella2 (G2) is working again
- Re-enables search result networks
- Log logged-in users
5098: EDK: Update option description for initial_score

2006/05/15
5090: Http_client: Fix 302 redirect when Location starts with "."
      and filename changes
5095: Configure: improve libpng detection, optical improvements

2006/05/14
5094: Wget: New internal variable req_save <bool>
5093: CommonSwarming: Verbose error message if file size does not match
5092: HTML, rss: Add startbt link
5091: HTML: update EDK history links

2006/05/13
5089: IPBlock: Print seperate lists in block_list command for IPs
      blocked by local and web IP blocklists (pango)

2006/05/12
4976: Filetype recognition with libmagic
- new debug command: debug_dir, prints magic values for all files
- display file magic values in vd & upstats HTML popup & vd #num
NetBSD/Solaris users have to disable this function "--disable-magic"
until this bug is fixed:
http://savannah.nongnu.org/patch/?func=detailitem&item_id=4976#comment9
5088: Gnutella/FT/http_client fixes (zet)
- Gnutella (G1) is working again

2006/05/11
5087: HTML, upstats: new tooltip with complete filename,
      respect max_name_len for filename

2006/05/10
5083: HTML: Update EDK file history links (unease)

2006/05/09
5082: FileTP/Fasttrack/Soulseek: Fix splitting chunks off-by-one (pango)
5081: Change default ip_blocking_descriptions to false for faster startup
5080: Only print servers of enabled networks (pango)
5079: Ignore ._* in directory lists (pango)
5078: Telnet: Remove HTML code from sysinfo command
5077: FT: Fix fasttrack connection problem and adds a bootstrap nodes file url
      Removes old/broken imesh bootstrap node (zet)

2006/05/07
5076: Gd: Do not disable html_mods_vd_gfx if core is compiled without GD support
5075: DNS round robin, keep all IP addresses associated with DNS names,
      and return next one upon each request. (pango)

2006/05/06
5069: EDK: Fix broken unicode URIs parsing broken since 2.7.4 (pango)
5074: Change default Ocaml version to 3.09.2
5073: Update default IP blocklist URL, replaced
      http://www.bluetack.co.uk/config/antip2p.txt with
      http://www.bluetack.co.uk/config/level1.gz
5068: New global option user_agent, current option BT-user_agent overrides
      the global value in BT module (pango)
5064: BT: only try to connect to http trackers (pango)
5040: Overnet: Open TCP port only when network is active

2006/04/14
5036: BT: Correctly parse .torrent files with an empty directory (again)
5039: Fix dp500 compile
-------------------------------------------------------------------------------
2006/04/13: version 2.7.5 = tag release-2-7-5

2006/04/10
5035: Make Soulseek, Opennapster, DirectConnect compilable again
  This does not mean the network modules work again,
  they only compile again. More work is needed.
5032: CommonSwarming/WIP2: Some function rewrites and comments (pango)

2006/04/09
5031: Merge CommonSwarming and CommonSwarming2 code (pango)

2006/04/08
5029: EDK: Remove set_brothers command and brotherhood option
5030: Update config.guess and config.sub to version 2006-02-27
4778: CommonSwarming: In addition to the first and last chunk also load
      the second last chunk if available before the rest to improve preview
5028: New environment variable for file_completed_cmd:
      $DLFILES (number of downloading files)
5027: EDK: Deactivate DonkeySUI if /dev/urandom is missing

2006/04/06
5021: Fix compile bug in tryopen patch when bzip2 is disabled
5020: Allow compile with Ocaml 3.09.2 CVS code,
      3.09.1 will stay default for MLDonkey-compiled Ocaml
5016: Options save: Really fix bug addressed in patch #5015

2006/04/05
5015: Fix option file saving bug introduced in tryopen patch

2006/04/03
5011: EDK: Update server info received by UDP when
      update_server_list_server false (pango)
5009: Ignore files .DS_Store and ._filename.ext in dir listings on all platforms
5006: Small logfile change
5004: Automatically closes opened descriptors using "tryopen pattern" (pango)
5005: CommonBlocking: Do not block IPs when GeoIP database is not loaded

2006/04/02
5003: BT: Improve client recognition (zet)
5002: Overnet: Fix Out of Memory Exception (zet)

2006/03/31
4997: Swarming: correctly create a new range when one is splitted (pango)

2006/03/29
4931: CommonBlocking: Block/allow IPs by country codes (requires GeoIP) (pango)
- new options:
  - ip_blocking_countries, insert country codes here
  - ip_blocking_countries_block true|false
      false: use ip_blocking_countries as block list,
             all other countries are allowed
      true:  use ip_blocking_countries as allow list,
             all other countries are blocked
4995: HTML: Fix friends filelist display
4996: HTML: Add/remove for web_infos (vwi), update old contact.dat URL
- web_infos, rename command add_url to urladd, new command urlremove
- prints option help texts for web_infos and calendar command
- file_kinds are now printed as list with descriptions for easier setup

2006/03/19
4917: HDD space check
- New options:
  hdd_send_warning_interval
    Send a warning mail each <interval> hours for each directory,
    0 to deactivate mail warnings.

  hdd_temp_minfree
    Mininum free space in MB on temp_directory, minimum 50
  hdd_temp_stop_core, default false
    If true core shuts down when free space on temp dir is below
    hdd_temp_minfree, otherwise all downloads are queued and a
    warning email is sent.

  hdd_coredir_minfree
    Mininum free space in MB on core or log directory, minimum 20
  hdd_coredir_stop_core, default true
    If true core shuts down when free space on core dir is below
    hdd_coredir_minfree, otherwise all ini file saving is stopped
    until core shutdown and a warning email is sent.
    Logging is sent to RAM when log dir is full.

The hard-coded minimum values can not be circumvented, MLDonkey will always
perform these HDD space checks once a minute.

2006/03/18
4985: Log file clean-up for verbosity = "md4"

2006/03/17
4981: Dllink: Fix wrong referer in HEAD request
4980: Multiuser: internal admin_user variable
4979: Fix hashing large number of files

2006/03/15
4972: FileTP: Allow ftp:// downloads via dllink command
4971: BT: Allow read-only access for shared files
4967: CommonUserDb: Keep old user database updated for easy downgrades

2006/03/09
4962: BT: New command "startbt" to force the start of a torrent download (jave)

2006/03/08
4963: Re-apply $DEVFLAGS to Makefile.in (pango)
4961: EDK: New default URL for server list download
4960: Ignore .DS_Store on MacOSX, BT: ignore dirs in torrents/incoming (pango)

2006/03/06
4954: New function Unix32.owner to read user and group entry of a file 
- to debug use command debug_fileinfo <file>
- renamed debug command "disk" to "debug_disk"
- renamed debug command "rlimit" to "debug_rlimit"
4950: Close unneeded file descriptors

2006/03/05
4946: System-wide cookies and referers option
- MLDonkey will not move data from bittorrent.ini to downloads.ini
- This data will be used in web_infos, dllink and BT module.
4951: GUI: Update server country codes after loading GeoIP data
4949: Gzip/Bzip2: Close opened FD after opening an invalid archive file
4945: BT: Automatically start new torrents downloads
- new directory $MLDONKEY_DIR/torrents/incoming, all files present
  in this dir are started automatically, its scanned every 10 seconds.

2006/03/01
4939: Support for compressed ipfilter.dat files (.gz, .bz2 or .zip) (pango)
4930: giFT GUI: Authentication support (pango)
- login with giFTcurs now has to be done like this: giFTcurs -p user:password

2006/02/26
4938: Improve MLDonkey system user database
due to older problems with HTML interface:
- renamed command add_user to useradd
- renamed command remove_user to userdel
- user name is printed in browser title when bwstats is active
-------------------------------------------------------------------------------
2006/02/26: version 2.7.4 = tag release-2-7-4

2006/02/25
4928: BT: Fix invalid encoding in announce URL (darkfader)
- removed old, broken version and added new version

2006/02/23
4934: FileTP: Small improvements
- fix download restart bug when core is restarted, sources where not loaded
- save referer values to files.ini
- display amount of transfered data in downloaders list
- display source IP and Countrycode in HTML downloaders list
- display filesize in GUI
- display number of sources in GUI
4933: BT: Display number of sources in GUI

2006/02/21
4928: BT: Fix invalid encoding in announce URL (darkfader)
4929: Do not print password_empty warning if enable_user_config true
4926: Runinfo: Warn about not-working DNS resolution,
      /dev/urandom detection was not disabled if --disable-donkeysui is used

2006/02/20
4922: OpenBSD: Small change for patch 4920
4921: MinGW: show current DL & UL stats in console title (Schlumpf)
4909: Print warning messages when run on non-supported operating systems
      currently for example Windows 95/98/ME (Schlumpf)
4920: Cleanup included header files in C code (Schlumpf)

2006/02/17
4910: EDK: Use updated protocol information when parsing
      consecutive messages (sam_dennis)
4915: Log: Small cleanups
4918: some syntax and comment cleanups in stubs_c.c (Schlumpf)

2006/02/13
4906: MinGW: improve uname output (Schlumpf)
4908: Configure: Fix for Beos, allow use of Dragonfly BSD

2006/02/11
4883: Mac OS X: Fix for broken Apple cpp-3.3
4902: EDK: Stub respond to directory browsing requests (sam_dennis)
4905: Update for patch 4823: add another -fno-fomit-frame-pointer
      in config/Makefile.in to avoid breaking CryptoPP (mikeX)
4903: EDK: Remove obsolete donkeyNeighbours (thx to sam_dennis)
4907: EDK: Fixed copy/paste error in emule miscoptions1 reading (sam_dennis)

2006/02/10
4904: Configure: Raise required autoconf version to 2.55 due to AC_MSG_FAILURE

2006/02/09
4892: Fix make when CXXFLAGS is defined (mikex)
4894: EDK: Support "new ed2k meta tags" to allow browsing
      shared directories of newer eMule clients (sam_dennis)
4891: Configure: Override system-installed Ocaml and force local compile
  Use ./configure --enable-force-ocaml to force MLDonkey to compile Ocaml,
  regardless if the system has Ocaml already installed or not.
  --enable-ocamlver=CVS uses a CVS checkout of Ocaml HEAD.
4885: EDK: Show correct IP of indirect clients in uploader list

2006/02/06
4879: EDK: Support for sources in ed2k:// links
- example:
ed2k://|file|a.txt|1|AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|/|sources,1.0.0.0:4662|/
4849: EDK: Fix hashing of newly shared files
- avoid hashing shared files twice
- avoid problems while hashing big files
- remove obsolete compute_md4_delay option
4878: Addition to patch 4875 (conditional bzip2 support using cpp)

2006/02/05
4877: BT: Recognize Ktorrent clients (CruX, zet)
4876: EDK: Remove obsolete option random_order_download
4875: conditional bzip2 support using cpp (pango)
4870: runinfo: add connected_user and check empty PW (schlumpf)
4872: Fix gd detection on NetBSD, use data from gdlib-config
      MinGW compile-guide was updated, gdlib-config has to be changed
4871: Optimize some Printf.sprintf "%s" code
4869: Remove obsolete redirector code
      http://mldonkey.sourceforge.net/Redirector
4856: reverse patch: configure: disable iconv by default on MinGW
      it is not necessary anymore

2006/02/04
4867: Use setrlimit to raise allowed ulimit open files

2006/02/03
4863: GUI/Multiuser: Prevent kill by users other than admin
4862: EDK: Fix broken import of eMule temp Files (import_temp) (schlumpf)
4860: Multiuser: print warning if admin password is empty
- user admin is re-created if deleted, it has to be present in any case because
  some commands are only available for admin,  like users, remove_user and kill
- create structure for startup messages, displayed on GUI, HTML, Telnet
4859: Multiuser: Only user "admin" is allowed to change options
      if the new option enable_user_config (default true) is set to false
4858: HTML: Update some links to mldonkey.sf.net
4857: SIGUSR1 & SIGUSR2 do not exist on Windows
4856: configure: disable iconv by default on MinGW
4853: Fix HTML errors on rss command output (unease)

2006/02/02
4851: Support system signals SIGUSR1 & SIGUSR2
      SIGUSR1 saves options
      SIGUSR2 performs garbage collection
4850: Fixed bitprint hashing for files > 4GB (thx to zet)
      mld_hash: implement SIGINT and SIGTERM signals

2006/01/29
4844: Fix Solaris compile broken since DonkeySUI patch
4830: Update Wiki links
      New Wiki URL: http://mldonkey.sourceforge.net
      New Forum URL: http://mldonkey.sourceforge.net/forums
4843: HTML: Improve output of rss command
4842: Some logfile stuff
4841: Create new dir web_infos for web_infos files,
      BT: do not save .torrent or announce.*
      all files downloaded by web_infos go to $MLDONKEY_DIR/web_infos
      to avoid downloading files twice move files from $MLDONKEY_DIR
      into that new dir
4826: improve error message due to corrupt config files (schlumpf)
4821: improve display of sysinfo (schlumpf)

2006/01/26
4816: Update Ocaml-RSS and Xml-light to current versions
4827: longhelp cleanup (anhi)
4823: EDK: CryptoPP optional, disable with --disable-donkeysui
      Makefile: link CryptoPP stuff only in binaries which need it
      Buildinfo: show compiler versions
      Configure: display compiler versions (schlumpf)
      Configure: if iconv checking fails continue with disabled iconv
      Configure: do not use bzip2 if bzip.h is not found (FLI4L buildroot)

2006/01/25
4820: Move CommonGraphics to DriverGraphics, check libgd version
      Configure: Check if libgd > 2.0.14 is installed
      NetBSD: added paths for libgd package
      NetBSD: adjusted stat command to properly read SCM date
      move build-, run-, and diskinfo command to driver module
      (thanks to SchAmane)
-------------------------------------------------------------------------------

Split Changelog in two parts, all stuff older than 2.7.4 is now in docs/ChangeLog.old:

http://savannah.nongnu.org/cgi-bin/viewcvs/mldonkey/mldonkey/docs/ChangeLog.old?rev=HEAD&content-type=text/vnd.viewcvs-markup
