Skip to content

Releases: arvidn/libtorrent

libtorrent-1.2.15

04 Dec 22:13
Compare
Choose a tag to compare

1.2.15 released

  • cache DNS lookups for SOCKS5 proxy
  • fix stalled pieces on disk-full errors
  • fix build configuration issue on NetBSD, OpenBSD and DragonFly
  • make UTF-8 sanitization a bit stricter. This will re-write invalid UTF-8
    code points encoding surrogate pairs
  • fix restoring last_seen_complete from resume data
  • fix issue on MacOS where the DHT was not restarted on a network-up notification
  • make remove_torrent flags be treated as flags (instead of an enum)

libtorrent-2.0.4

07 Jun 00:05
Compare
Choose a tag to compare
  • fix piece picker bug causing double-picks with prefer-contiguous enabled
  • expose session_params in python bindings
  • fix (deprecated) use of add_torrent_params::info_hash
  • fix issue creating and loading v2 torrents with empty files. Improves
    conformance to BEP52 reference implementation

fixes merged in from the 1.2.x branch:

  • improve handling of seed flag in PEX messages
  • fix issue of accruing unlimited DHT node candidates when DHT is disabled
  • fix bug in parsing chunked encoding
  • fix incorrect reporting of active_duration when entering graceful-pause
  • fix python binding for functions taking string_view
  • fix python binding for torrent_info constructor overloads
  • issue python deprecation warnings for some deprecated functions in the python bindings
  • fix python binding for torrent_info::add_url_seed, add_tracker and add_http_seed

libtorrent-1.2.14

07 Jun 00:02
Compare
Choose a tag to compare
  • improve handling of seed flag in PEX messages
  • fix issue of accruing unlimited DHT node candidates when DHT is disabled
  • fix bug in parsing chunked encoding
  • fix incorrect reporting of active_duration when entering graceful-pause
  • fix python binding for functions taking string_view
  • fix python binding for torrent_info constructor overloads
  • issue python deprecation warnings for some deprecated functions in the python bindings
  • fix python binding for torrent_info::add_url_seed, add_tracker and add_http_seed

libtorrent-2.0.3

28 Mar 21:43
Compare
Choose a tag to compare

With this release there's also a security audit published, done by include security and sponsored by Mozilla. The issues raised in the report were addressed in the previous release and documented here along with the report.

Changes since the previous 2.0.x release:

  • add new torrent_file_with_hashes() which includes piece layers for
    creating .torrent files
  • add file_prio_alert, posted when file priorities are updated
  • fix issue where set_piece_hashes() would not propagate file errors
  • add missing python binding for event_t
  • add work-around for systems without fseeko() (such as Android)
  • add convenience header libtorrent/libtorrent.hpp
  • increase default max_allowed_in_request_queue
  • fix loading non-ascii filenames on windows with torrent_info constructor (2.0 regression)
  • add std::hash<> specialization for info_hash_t
  • fix integer overflow in hash_picker and properly restrict max file sizes in torrents
  • strengthen SSRF mitigation for web seeds

libtorrent-1.2.13

28 Mar 21:34
Compare
Choose a tag to compare

Changes since the previous 1.2.x release:

  • Use /etc/ssl/cert.pem to validate HTTPS connections on MacOS
  • allow no-interest timeouts of peer connections before all connections slots are full
  • fix issue where a DHT message would count as an incoming connection
  • fix issue when failing to parse outgoing_interfaces setting
  • fix super-seeding issue that could cause a segfault
  • fix data race in python binding of session::get_torrent_status()
  • fix need_save_resume_data() for renaming files, share-mode, upload-mode,
    disable- pex, lsd, and dht.
  • fix incoming TCP connections when using tracker-only proxy
  • fix issue with paths starting with ./
  • fix integer overflow when setting a high DHT upload rate limit
  • improve Path MTU discovery logic in uTP
  • fix overflow issue when rlimit_nofile is set to infinity
  • fix issue in python binding interpreting int settings > INT_MAX
  • Fix cxxflags and linkflags injection via environment variables

libtorrent-2.0.2

07 Jan 23:08
Compare
Choose a tag to compare

Changes to the 2.0 branch:

  • add v1() and v2() functions to torrent_info
  • fix piece_layers() to work for single-piece files
  • fix python binding regression in session constructor flags
  • fix unaligned piece requests in mmap_storage
  • improve client_data_t ergonomics
  • fix issue with concurrent access to part files

Changes merged from the 1.2 branch:

  • fix loading of DHT node ID from previous session on startup
  • use getrandom(), when available, and fall back to /dev/urandom
  • fix python binding for "value" in dht put alerts
  • fix bug in python binding for dht_put_mutable_item
  • fix uTP issue acking FIN packets
  • validate HTTPS certificates by default (trackers and web seeds)
  • load SSL certificates from windows system certificate store, to authenticate trackers
  • introduce mitigation for Server Side Request Forgery in tracker and web seed URLs
  • fix error handling for pool allocation failure

libtorrent-1.2.12

05 Jan 21:55
Compare
Choose a tag to compare
  • fix loading of DHT node ID from previous session on startup
  • use getrandom(), when available, and fall back to /dev/urandom
  • fix python binding for "value" in dht put alerts
  • fix bug in python binding for dht_put_mutable_item
  • fix uTP issue acking FIN packets
  • validate HTTPS certificates by default (trackers and web seeds)
  • load SSL certificates from windows system certificate store, to authenticate trackers
  • introduce mitigation for Server Side Request Forgery in tracker and web seed URLs
  • fix error handling for pool allocation failure

libtorrent-2.0.1

15 Nov 13:30
Compare
Choose a tag to compare

Fixes since libtorrent 2.0:

  • fix attribute in single-file v2 torrent creation
  • fix padding for empty files in v2 torrent creation
  • add function to ask a file_storage whether it's v2 or not
  • fix mtime field when creating single-file v2 torrents
  • fix performance regression in checking files
  • disable use of SetFileValidData() by default (windows). A new setting
    allows enabling it

libtorrent-1.2.11

15 Nov 13:28
Compare
Choose a tag to compare

Fixes since the 1.2.10 release:

  • fix issue with moving the session object
  • deprecate torrent_status::allocating. This state is no longer used
  • fix bug creating torrents with symbolic links
  • remove special case to save metadata in resume data unconditionally when added throught magnet link
  • fix bugs in mutable-torrent support (reusing identical files from different torrents)
  • fix incorrectly inlined move-assignment of file_storage
  • add session::paused flag, and the ability to construct a session in paused mode
  • fix session-pause causing tracker announces to fail
  • fix peer-exchange flags bug
  • allow saving resume data before metadata has been downloaded (for magnet links)
  • record blocks in the disk queue as downloaded in the resume data
  • fix bug in set_piece_deadline() when set in a zero-priority piece
  • fix issue in URL parser, causing issues with certain tracker URLs
  • use a different error code than host-unreachable, when skipping tracker announces

libtorrent-2.0

06 Sep 17:46
Compare
Choose a tag to compare

Changes since

  • dropped depenency on iconv
  • deprecate set_file_hash() in torrent creator, as it's superceded by v2 torrents
  • deprecate mutable access to info_section in torrent_info
  • removed deprecated lazy_entry/lazy_bdecode
  • stats_alert deprecated
  • remove bittyrant choking algorithm
  • update userdata in add_torrent_params to be type-safe and add to torrent_handle
  • add ip_filter to session_params
  • added support for wolfSSL for SHA-1 hash and HTTPS (no Torrents over SSL)
  • requires OpenSSL minimum version 1.0.0 with SNI support
  • deprecated save_state() and load_state() on session in favour of new
    write_session_params() and read_session_params()
  • added support for BitTorrent v2 (see docs/upgrade_to_2.0.html)
  • create_torrent() pad_file_limit parameter removed
  • create_torrent() merkle- and optimize-alignment flags removed
  • merkle_tree removed from add_torrent_params
  • announce_entry expose information per v1 and v2 info-hash announces
  • deprecated sha1_hash info_hash members on torrent_removed_alert,
    torrent_deleted_alert, torrent_delete_failed_alert and add_torrent_params
  • undeprecate error_file_metadata for torrent errors related to its metadata
  • remove support for adding a torrent under a UUID (used for previous RSS support)
  • remove deprecated feature to add torrents by file:// URL
  • remove deprecated feature to download .torrent file from URL
  • requires boost >= 1.66 to build
  • update networking API to networking TS compatible boost.asio
  • overhauled disk I/O subsystem to use memory mapped files (where available)
  • libtorrent now requires C++14 to build
  • added support for GnuTLS for HTTPS and torrents over SSL