Dear Christian, Here's the changelog from 0.15.10 onwards :- 0.16.9 release
* fix long filename truncation on windows * distinguish file open mode when checking files and downloading/seeding with bittorrent. updates storage interface * improve file_storage::map_file when dealing with invalid input * improve handling of invalid utf-8 sequences in strings in torrent files * handle more cases of broken .torrent files * fix bug filename collision resolver * fix bug in filename utf-8 verification * make need_save_resume() a bit more robust * fixed sparse flag manipulation on windows * fixed streaming piece picking issue 0.16.8 release * make rename_file create missing directories for new filename * added missing python function: parse_magnet_uri * fix alerts.all_categories in python binding * fix torrent-abort issue which would cancel name lookups of other torrents * make torrent file parser reject invalid path elements earlier * fixed piece picker bug when using pad-files * fix read-piece response for cancelled deadline-pieces * fixed file priority vector-overrun * fix potential packet allocation alignment issue in utp * make 'close_redudnant_connections' cover more cases * set_piece_deadline() also unfilters the piece (if its priority is 0) * add work-around for bug in windows vista and earlier in GetOverlappedResult * fix traversal algorithm leak in DHT * fix string encoding conversions on windows * take torrent_handle::query_pieces into account in torrent_handle::statue() * honor trackers responding with 410 * fixed merkle tree torrent creation bug * fixed crash with empty url-lists in torrent files * added missing max_connections() function to python bindings 0.16.7 release * fix string encoding in error messages * handle error in read_piece and set_piece_deadline when torrent is removed * DHT performance improvement * attempt to handle ERROR_CANT_WAIT disk error on windows * improve peers exchanged over PEX * fixed rare crash in ut_metadata extension * fixed files checking issue * added missing pop_alerts() to python bindings * fixed typos in configure script, inversing some feature-enable/disable flags * added missing flag_update_subscribe to python bindings * active_dht_limit, active_tracker_limit and active_lsd_limit now interpret -1 as infinite 0.16.6 release * fixed verbose log error for NAT holepunching * fix a bunch of typos in python bindings * make get_settings available in the python binding regardless of deprecated functions * fix typo in python settings binding * fix possible dangling pointer use in peer list * fix support for storing arbitrary data in the DHT * fixed bug in uTP packet circle buffer * fix potential crash when using torrent_handle::add_piece * added missing add_torrent_alert to python binding 0.16.5 release * udp socket refcounter fix * added missing async_add_torrent to python bindings * raised the limit for bottled http downloads to 2 MiB * add support for magnet links and URLs in python example client * fixed typo in python bindings' add_torrent_params * introduce a way to add built-in plugins from python * consistently disconnect the same peer when two peers simultaneously connect * fix local endpoint queries for uTP connections * small optimization to local peer discovery to ignore our own broadcasts * try harder to bind the udp socket (uTP, DHT, UDP-trackers, LSD) to the same port as TCP * relax file timestamp requirements for accepting resume data * fix performance issue in web seed downloader (coalescing of blocks sometimes wouldn't work) * web seed fixes (better support for torrents without trailing / in web seeds) * fix some issues with SSL over uTP connections * fix UDP trackers trying all endpoints behind the hostname 0.16.4 release * raise the default number of torrents allowed to announce to trackers to 1600 * improve uTP slow start behavior * fixed UDP socket error causing it to fail on Win7 * update use of boost.system to not use deprecated functions * fix GIL issue in python bindings. Deprecated extension support in python * fixed bug where setting upload slots to -1 would not mean infinite * extend the UDP tracker protocol to include the request string from the tracker URL * fix mingw build for linux crosscompiler 0.16.3 release * fix python binding backwards compatibility in replace_trackers * fix possible starvation in metadata extension * fix crash when creating torrents and optimizing file order with pad files * disable support for large MTUs in uTP until it is more reliable * expose post_torrent_updates and state_update_alert to python bindings * fix incorrect SSL error messages * fix windows build of shared library with openssl * fix race condition causing shutdown hang 0.16.2 release * fix permissions issue on linux with noatime enabled for non-owned files * use random peer IDs in anonymous mode * fix move_storage bugs * fix unnecessary dependency on boost.date_time when building boost.asio as separate compilation * always use SO_REUSEADDR and deprecate the flag to turn it on * add python bindings for SSL support * minor uTP tweaks * fix end-game mode issue when some files are selected to not be downloaded * improve uTP slow start * make uTP less aggressive resetting cwnd when idle 0.16.1 release * fixed crash when providing corrupt resume data * fixed support for boost-1.44 * fixed reversed semantics of queue_up() and queue_down() * added missing functions to python bindings (file_priority(), set_dht_settings()) * fixed low_prio_disk support on linux * fixed time critical piece accounting in the request queue * fixed semantics of rate_limit_utp to also ignore per-torrent limits * fixed piece sorting bug of deadline pieces * fixed python binding build on Mac OS and BSD * fixed UNC path normalization (on windows, unless UNC paths are disabled) * fixed possible crash when enabling multiple connections per IP * fixed typo in win vista specific code, breaking the build * change default of rate_limit_utp to true * fixed DLL export issue on windows (when building a shared library linking statically against boost) * fixed FreeBSD build * fixed web seed performance issue with pieces > 1 MiB * fixed unchoke logic when using web seeds * fixed compatibility with older versions of boost (down to boost 1.40) 0.16 release * support torrents with more than 262000 pieces * make tracker back-off configurable * don't restart the swarm after downloading metadata from magnet links * lower the default tracker retry intervals * support banning web seeds sending corrupt data * don't let hung outgoing connection attempts block incoming connections * improve SSL torrent support by using SNI and a single SSL listen socket * improved peer exchange performance by sharing incoming connections which advertize listen port * deprecate set_ratio(), and per-peer rate limits * add web seed support for torrents with pad files * introduced a more scalable API for torrent status updates (post_torrent_updates()) and updated client_test to use it * updated the API to add_torrent_params turning all bools into flags of a flags field * added async_add_torrent() function to significantly improve performance when adding many torrents * change peer_states to be a bitmask (bw_limit, bw_network, bw_disk) * changed semantics of send_buffer_watermark_factor to be specified as a percentage * add incoming_connection_alert for logging all successful incoming connections * feature to encrypt peer connections with a secret AES-256 key stored in .torrent file * deprecated compact storage allocation * close files in separate thread on systems where close() may block (Mac OS X for instance) * don't create all directories up front when adding torrents * support DHT scrape * added support for fadvise/F_RDADVISE for improved disk read performance * introduced pop_alerts() which pops the entire alert queue in a single call * support saving metadata in resume file, enable it by default for magnet links * support for receiving multi announce messages for local peer discovery * added session::listen_no_system_port flag to prevent libtorrent from ever binding the listen socket to port 0 * added option to not recheck on missing or incomplete resume data * extended stats logging with statistics=on builds * added new session functions to more efficiently query torrent status * added alerts for added and removed torrents * expanded plugin interface to support session wide states * made the metadata block requesting algorithm more robust against hash check failures * support a separate option to use proxies for peers or not * pausing the session now also pauses checking torrents * moved alert queue size limit into session_settings * added support for DHT rss feeds (storing only) * added support for RSS feeds * fixed up some edge cases in DHT routing table and improved unit test of it * added error category and error codes for HTTP errors * made the DHT implementation slightly more robust against routing table poisoning and node ID spoofing * support chunked encoding in http downloads (http_connection) * support adding torrents by url to the .torrent file * support CDATA tags in xml parser * use a python python dictionary for settings instead of session_settings object (in python bindings) * optimized metadata transfer (magnet link) startup time (shaved off about 1 second) * optimized swarm startup time (shaved off about 1 second) * support DHT name lookup * optimized memory usage of torrent_info and file_storage, forcing some API changes around file_storage and file_entry * support trackerid tracker extension * graceful peer disconnect mode which finishes transactions before disconnecting peers * support chunked encoding for web seeds * uTP protocol support * resistance towards certain flood attacks * support chunked encoding for web seeds (only for BEP 19, web seeds) * optimized session startup time * support SSL for web seeds, through all proxies * support extending web seeds with custom authorization and extra headers * settings that are not changed from the default values are not saved in the session state * made seeding choking algorithm configurable * deprecated setters for max connections, max half-open, upload and download rates and unchoke slots. These are now set through session_settings * added functions to query an individual peer's upload and download limit * full support for BEP 21 (event=paused) * added share-mode feature for improving share ratios * merged all proxy settings into a single one * improved SOCKS5 support by proxying hostname lookups * improved support for multi-homed clients * added feature to not count downloaded bytes from web seeds in stats * added alert for incoming local service discovery messages * added option to set file priorities when adding torrents * removed the session mutex for improved performance * added upload and download activity timer stats for torrents * made the reuse-address flag configurable on the listen socket * moved UDP trackers over to use a single socket * added feature to make asserts log to a file instead of breaking the process (production asserts) * optimized disk I/O cache clearing * added feature to ask a torrent if it needs to save its resume data or not * added setting to ignore file modification time when loading resume files * support more fine-grained torrent states between which peer sources it announces to * supports calculating sha1 file-hashes when creating torrents * made the send_buffer_watermark performance warning more meaningful * supports complete_ago extension * dropped zlib as a dependency and builds using puff.c instead * made the default cache size depend on available physical RAM * added flags to torrent::status() that can filter which values are calculated * support 'explicit read cache' which keeps a specific set of pieces in the read cache, without implicitly caching other pieces * support sending suggest messages based on what's in the read cache * clear sparse flag on files that complete on windows * support retry-after header for web seeds * replaced boost.filesystem with custom functions * replaced dependency on boost.thread by asio's internal thread primitives * added support for i2p torrents * cleaned up usage of MAX_PATH and related macros * made it possible to build libtorrent without RTTI support * added support to build with libgcrypt and a shipped version of libtommath * optimized DHT routing table memory usage * optimized disk cache to work with large caches * support variable number of optimistic unchoke slots and to dynamically adjust based on the total number of unchoke slots * support for BitTyrant choker algorithm * support for automatically start torrents when they receive an incoming connection * added more detailed instrumentation of the disk I/O thread 0.15.11 release * fixed web seed bug, sometimes causing infinite loops * fixed race condition when setting session_settings immediately after creating session * give up immediately when failing to open a listen socket (report the actual error) * restored ABI compatibility with 0.15.9 * added missing python bindings for create_torrent and torrent_info Looking forward to a new release, maybe you can target experimental. -- Regards, Shirish Agarwal शिरीष अग्रवाल My quotes in this email licensed under CC 3.0 http://creativecommons.org/licenses/by-nc/3.0/ http://flossexperiences.wordpress.com 065C 6D79 A68C E7EA 52B3 8D70 950D 53FB 729A 8B17 -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org