Newer ChangeLog entries are in the Trac wiki:

http://libtorrent.rakshasa.no/wiki/Changelog

I just converted them to the ChangeLog format so I am attaching it.

Regards,
-- 
Jindrich Makovicka
2006-01-26  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.11.2 released

        * Added "max_open_http" option that limits the max number of 
simultaneous
        http connections. By default set to 32.

        * Directory structured view of the file list. The '/' key collapses
        directories, while the right arrow or ^F enters the selected directory.
        Changing the priority for a directory changes all contained files.

        * Replaced old autoconf scripts with pkg-config checks. If the curl or
        openssl check now fails, make sure pkg-config can find them.

        * Added "create_link" and "delete_link" options which apply to a 
download.
        These must be used with the new "on_*" options, so as to allow you to
        create symbolic links when starting, stopping, finishing, etc, a 
torrent.
        
2006-12-28  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.11.1 released

        * Added dired view of files and allow priority to be changed for all 
files
        within a directory.

        * Allow initial hash checking to be paused and resumed.

        * Minor bug fixes.
        
2006-12-13  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.11.0 released

        * Added "tracker_numwant", "encryption", "connection_proxy",
        'preload_type', 'preload_min_size', 'preload_required_rate',
        "split_file_size", "split_suffix", "max_file_size",

        * Encrypted (obfuscated) handshake and connection support. Patch by 
Josef
        Drexler, public domain as per earlier agreement.

        * Append '&' instead of '?' to the tracker url when the url already
        has '?'.

        * Added support for tunneling through HTTP 1.0 proxies.

        * Cut the size of the libtorrent binary from 925kb to 617kb by using 
using
        GCC's symbol export attributes and changes to how exceptions are
        constructed.

        * Moved client info, etc, from rtorrent to libtorrent and cleaned up 
the API.

        * Support for the CANCEL piece request message. (Finally)

        * Allow the user to configure the max file size a torrent is allowed to
        create, and the option to split large files.
        
2006-10-27  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.10.4 released

        * Use the actual completed torrent data in the 'downloaded' field sent 
to
        the tracker, rather than the download rate total. This should fix some
        problems with too much downloaded data being reported to the tracker.
        
2006-10-05  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.10.3 released

        * Didn't properly clean up when a torrent with the same info hash was
        rejected. This caused random crashes and memory leaks.

        * Properly cancel pieces that are skipped when downloading.

2006-09-14  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.10.2 released

        * Rebound the old ^P for commands to ^X due to a collision with up key.

        * The ^F and ^B keys can be used instead of left and right arrows.

        * Support for qwertz keyboard layout.

        * Fixed a bug that caused quick hash checking to mark chunks as 
        unfinished if it was unable to map them.

        * Peer info with the corrupt upload counter is now saved in the session 
        torrent. Uninteresting peers are removed at regular intervals.

        * Allow only one connection from a single host. A peer's listening port 
        is now kept track of separately from the connection port.

        * An integer is used in the session torrent instead of a bitfield when 
        either none or all chunks are done.

        * Added code for preloading chunks that get mapped, currently disabled.

        * Added kqueue support, which can be enabled with --with-kqueue. 
Doesn't 
        work on MacOSX 10.4 due to a kernel bug, and has too long polling 
timeouts.

        * Added --with-address-space=<MB> option to change the assumed address 
        space size. Currently set to 1GB on 32bit arch, 4GB on 64bit.

        * When checking how much free disk-space remains, any file or directory 
        that is a symlink is tested as they may be on a different mount point.

        * Fixed most of the bugs reported, too numerous to list here. If a bug 
        is still present in this release, let me know.

2006-08-16  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.10.1 released

        * Max memory usage for mapped chunks is now controlled by ulimit or the 
        "max_memory_usage" option. This only controls mapped memory, not 
resident.

        * Improved syncing so that it tries to sync chunks that are close 
        together. Also the "safe_sync" option may be used to force MS_SYNC on 
        buggy filesystems, like NFS in linux ~2.6.13.

        * Added "min/max_peers_seed" option which changes the min/max peers on 
        torrents being seeded. Patch by Josef Drexler.

        * Save tracker enable/disable state.

        * UI code has been refactored and a menu added to the download window.

        * '^K' now sets ignore state so it can be used to quickly stop torrents 
        that are in the watch directory, without needing 'I'.

        * Fixed several bugs.
        
2006-07-20  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.10.0 released

        * Optimized handshakes by disconnecting earlier and exchanging 
bitfields 
        before creating the PeerConnection.

        * Added "close_low_diskspace" option that closes active downloads on 
        filesystems with less space left than what was passed as the argument. 
        Patch by Josef Drexler.

        * Added "stop_on_ratio" option and display the ratio. Patch by Josef 
        Drexler.

        * Added "start_tied" option and the file association is not cleared 
when 
        "*_untied" are called. The 'U' key will clear the file association and 
        'I' key will make the download ignore the commands.

        * Added "key_layout" option with support for azerty.

        * Added pageup/down to chunks seen and file list. Patch by Josef 
Drexler.

        * Added transfer list view, bound to the 'u' key.

        * Made handling of incoming bad data more robust. The blocks of a 
failed 
        chunk is compared to previously downloaded blocks and a vote is given 
to 
        the version it matches.

        * Show the download progress in closed torrents.

        * Quick hash check for new torrents or torrents with valid resume data.

        * Fixed so it applies the proper encoding for the base directory of 
        multi-file torrents, as specified by the "encoding_list" option.

        * Added options for timeout_sync/safe_sync and max_chunks_queued. (for 
        syncing)

2006-05-23  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.9.3 released

        * Fixed a bug that caused session torrents that were queued for hashing 
to 
        cause an exception on load.

        * Fixed command-line argument's order being randomized when checking 
for 
        the '-n' flag.

        * Don't fail tracker requests where the tracker sends a dictionary type 
        for the "peers" field.
        
2006-05-19  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.9.2 released

        * Properly handle full disk. It first calls msync with MS_ASYNC, then 
30 
        seconds later with MS_SYMC. This guarantees the data is written, while 
not 
        blocking unnessesarily.

        * Completed message was not being sent to the tracker, fixed.

        * Added "-n" flag that disables loading of ~/.rtorrent.rc.

        * Added "close_untied=" option.
        
2006-05-04  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.9.1 released

        * Added views of the downloads that can be sorted and filtered. The 
keys 
        '1' to '6' are bound to a set which can be modified with the 'view_*' 
        options. (See man page)

        * Disconnect incoming connections early if the download is full. (Patch 
by 
        Josef Drexler)

        * Made IPv6 and ncursesw configurable, neither of which are actually 
used 
        yet.

        * Fixed mismatched delete/delete[] in Bitfield and various other bugs.

        * Added a "session_save" option which is scheduled by default every 30 
        minutes.

2006-04-06  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.9.0 released

        * Rewrote the chunk selector with support for rarity-first.

        * Added scrape information to the tracker list.

        * The uploaded field in tracker requests get reset every time a torrent 
is 
        restarted, so buggy trackers don't think the client has uploaded more 
than 
        it really did.

        * Show the client names and version in the peer list.

        * Added "send_buffer_size" and "receive_buffer_size" options that set 
the 
        socket SND/RCBBUF sizes.

        * Added signal that allows the client to filter connections based on ip 
        and port. Not implemented in the client yet.

        * Added "tos = default|lowdelay|throughput|reliability|mincost".

        * Close torrents with ^K.

        * Show seen chunks and seeder count with 'i', improved by Josef Drexler.

        * Added "enable_trackers=yes|no" option that can turn on/off the use of 
        trackers on all torrents.

        * Re-added 'tracker_dump' option which takes a filename and output 
better 
        formatted dumps.

        * A larger number of bugs fixed, minor features and cleanup of the API 
        which I don't feel like writing here.
        
2006-02-16  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.8.5 released

        * Enabled the session lock file by default. Made it remove stale locks
        if the hostname matches and the process id is not running.

        * Added proper abstraction for creating timers from seconds, this
        fixes some overflow bugs when scheduling tasks like tracker timeouts.

        * For every time all the trackers in the list has been unsuccessfully
        tried, increase the timeout by 20 seconds.

        * Expand ~ in paths in the client. This should cover all uses of file
        paths, but I might have missed some.

        * Added "import" and "try_import" options that loads an option
        file. The latter silently fails on non-existent files.

        * Added "-O" flag that takes a single option, allowing ',' to be used.

2006-02-04  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.8.4 released

        * Bind udp and http tracker requests to the address given with the 
"bind" 
        option.

        * Change the priority of a torrent with the '+' and '-' keys.

        * The schedule option allows clock time for the start and interval 
        sections.

        * Made it safe to remove torrents being viewed/selected, making 
        "remove_untied" usable.

        * Added the ^O key to change a closed torrent's destination directory. 
A 
        bit of a hack, and only works if the torrents hasn't been activated.

        * Allow new settings to be applied with the ^P key. This can be tested 
        with "print = foobar", which prints the string to the log.

        * Added the "working_directory" option that calls 'chdir' for the 
process.

        * Added the "session_lock" option that creates a lock file in the 
session 
        directory. Currently it doesn't try to clean up after crashes or 
reboots, 
        so it is by default disabled.

        * Fixed a bug that caused crashes with small screen sizes.
        
2006-01-17  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.8.3 released

        * Fixed a segfault, see "http://libtorrent.rakshasa.no/ticket/130";.

        * Set SO_REUSEADDR for listening socket so that there's no need to wait 
        for it to time out to reopen the same port.

        * Switched to compile with "-O2" rather than "-O3".

        * Improved the config file parser.

2006-01-09  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.8.2 released

        * Fixed a crash when changing file priorities and another caused by 
        torrents with empty directories.

        * Don't send piece request before interested since some clients 
        disconnects when that happens. BitTornado and uTorrent would send 
unchoked 
        before the peer has sends interested, causing them to disconnect.

        * Allow wild-card '*' when loading torrents.

        * Added the load, load_run, stop_untied and remove_untied options. See 
the 
        example rtorrent.rc for how to use these to watch a directory for new 
        torrents.

2005-12-20  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.8.1 released

        * Improved error handling for settings and added scheduling of 
commands, 
        which are currently limited to changing settings.

        * Added settings for using a http proxy and changing the process's 
umask.

        * Workaround for vfat's incomplete, though posix compatible, 
        implementation of truncate. This blocks for a while when creating files 
on 
        vfat etc.

        * Replaced many internal uses of sigc++'s slots with my own lightweight 
        slot, this gets rid of about a megabyte of debugging symbols and a few 
        hundred kb's of symbols.

        * Shows download time left and the number of failed pieces.

        * Fixed a buffer overflow in the peer connection's write buffer that 
could 
        in some rare cases cause a crash.

2005-11-21  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.8.0 released

        * New throttle implementation.

        * Enabled global limit on uploads that depends on the upload throttle. 
        Each download can have different priorities, at the moment seeded 
        downloads get half as many upload slots.

        * Display the encoding of files, and allow the user to create a list of 
        preferred encodings with the "encoding_list = <enc>" setting.

        * The client now identifies itself with the string 
        "rtorrent/CLIENT_VERSION/LIBRARY_VERSION".

        * Show percentage completed when doing hash checking.

2005-10-18  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.7.6 released

        * Replaced most of the sigc++ slots used internally in libtorrent with 
my 
        own lightweight functor. This saves some 600kb in debugging symbols.

        * Various bug fixes.
        
2005-09-28  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.7.5 released

        * Fixed a bug that caused download throttling to throw an exception.

        * Downloaded chunks scheduled for syncing didn't never got synced or 
        unmap'ed, until the download was stopped.

        * Improved selection of which peers and how many get choked/unchoked, 
        including a global limit on the number of unchoked peers with 
priorities 
        for different downloads. The latter is currently disabled as it 
requires a 
        change to the API to be used and requires more testing.

2005-09-18  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.7.4 released

        * New code for leeching connections, this will significantly improve 
        performance when downloading.

        * Using lazy unmapping of downloaded chunks with msync. Lack of 
disk-space 
        should cause a SIGBUS earlier and hopefully writes to disk will be less 
        frequent. VSZ and RSS memory usage will display much larger values than 
        before, but that is all disk cache.
        
2005-09-02  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.7.3 released

        * Proper fix for alignment bugs, use --enable-aligned if the automatic 
        check doesn't work on your platform.

        * Refactored chunk management making it cleaner and simpler. This will 
        make it easier to fix some msync related bugs and use some more complex 
        disk access/store behavior.

        * For every new peer connection the client would spend time counting 
the 
        set bits in the local bitfield. This was previously cached and was 
causing 
        a significant resource usage.

        * Added PeerConnectionSeed class that is used for seeder connections. 
It 
        fixes some design faults in the original PeerConnection and should use 
        significantly less resources. When it is deemed stable it will be 
forked 
        to create the new leeching connection.
        
2005-08-16  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.7.2 released

        * Fixed bug that caused a crash due to lack of cleanup of the tracker
        request when closing a download.

        * Detect if ints must be aligned, and if so use a (less efficient) way 
of
        reading/writing them from ProtocolBuffer.
        
2005-08-13  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.7.1 released

        * Replaced the old select based polling with a modular polling class 
which 
        is exposed to the client. Support for 'epoll' and 'select' based 
polling 
        included with the library, though the client may implement a 
replacement.

        * Support for variable sized fd_set's. Cleaned up the code that sets 
the 
        max number of open files and sockets, it should now gracefully handle 
an 
        _SC_OPEN_MAX limit from 64 and up.

        * When the download has less than min_peers connections, it will after 
30 
        seconds request more from the trackers. This will only happen maximum 5 
        times and only if more peers have been connected to in the mean time. 
It 
        supports multiple trackers by trying the other groups, though not other 
        trackers within a group, if the first does not provide more peers.

2005-07-19  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.7.0 released

        * Added support for UDP trackers. It can be disabled with the
        "enable_udp_trackers" setting.

        * Cleaned up the API, it should be pretty stable for a while. Although
        polling will propably be changed in the future to allow for the use of
        both select and epoll.

        * File priorities are now saved with the fast-resume data. Fast-resume 
and
        start/stopped state is only used when loading torrents from a session
        directory.

        * Added support for allocating space for the torrents on disk that use
        XFS. Looked into posix_fallocate, but it uses a very inefficient method
        for allocating on the systems i tried it on.
        
2005-07-06  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.6.7 released

        * Added setting for randominzing the port to be opened, withing the port
        range.

        * Improved the throttling code, should be much better now.

        * Fixed a nasty memory leak in PeerConnectionBase.

        * The client now saves the started/stopped state of torrents.

        * Added an OpenSSL exception to the license, and switched from Mozilla 
NSS
        to OpenSSL SHA1 implementation.

        * Enabled SocketManager, which keeps track of how many open sockets we 
are
        using. The client will use sysconf(_SC_OPEN_MAX) to determine how many
        open sockets to allow.

        * New chunks are requested sequentially from a peer, if possible.
        
2005-06-26  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.6.6 released

        * Includes a man page with the listing of keys and settings.

        * Added setting for doing hash check of finished torrents, or manally
        using ^r.

        * Added setting for the session directory.

        * Use '*' in file list view to change the priority of all files in a
        torrent.

        * Manually cycle the list of trackers by using the space-bar. Usefull in
        torrents that have multiple trackers listed, but those trackers don't
        share peer data.
        
2005-06-15  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.6.5 released

        * Added view of global up/down rate.

        * Fixed several bugs in the throttle code, it should fill up the quota
        even when uploading to a large number of peers.

        * Fixed several FreeBSD compile errors and one for gcc compilers using
        deperecated stl features.

        * Fixed bug that caused endgame mode to not work properly.
        
2005-06-07  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.6.4 released

        * Library API cleanup.

        * Configuration file and command line options added. See
        rtorrent/doc/rtorrent.rc and the '-o' flag.

2005-05-30  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.6.3 released

        * Fixed lots of bugs etc.
        
2005-05-03  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.6.2 released

        * Fixed a bug that caused an exception to be thrown when downloading
        torrents that had a file with length zero.

        * Initial hash checking of torrents now do read-ahead based on bytes, 
not
        chunks. Also it gives up control after every chunk that is checked, 
which
        increases the responsiveness of the client during the hash checking.

        * Implemented a new generic throttle system. Throttling of download is
        done with capital A,S,D,Z,X,C, while upload throttle uses the old
        non-capital keys.

2005-04-24  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.6.1 released

        * Requests by peers for an invalid piece index would cause an
        internal error exception to be thrown due to wrong order of
        validity checks.

        * Fixed a bug in the polling code that would cause memory
        corruption on OpenBSD leading to a crash.

        * Files that were closed and then reopened (in large torrents)
        would get the wrong permission causing an exception. (Why does
        open(...) and mmap(...) use different flags...)
        
2005-04-17  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.6.0 released

        * Rewrote the polling code to (hopefully) be more efficient,
        though it still contains some debugging checks. They will be
        removed later.  Cleaned up some other network related code.

        * Removed the dependency on OpenSSL due to licensing issues. The
        new SHA1 code is from the Mozilla's NSS codebase, which is
        partially licensed under MPL/LGPL/GPL.

        * Fine-grained read/write protection on files and chunks. You can
        now seed read-only files, though if it tries to download a chunk
        then the torrent will be stopped.

        * Force tracker requests with 'T' (capital), ignoring the
        tracker's "min interval".
        
2005-04-09  Jari Petter Sundell  <[EMAIL PROTECTED]>

        * libtorrent 0.5.5 released

        * Number of simultaniously open files is limited
        globally. Torrents with a large number of files should work ok
        now. Though there isn't a limit on the global number of sockets
        open, so this could still exhaust the available file descriptors.

        * Bind the listening port to a specific ip with the "-b" flag.

        * Select a different default root path to save the torrents in
        with the "-d" flag.

        * Fixed bug which would cause the piece requests from super-seeds
        to stall in certain cases.

Reply via email to