Skip to content

Releases: arvidn/libtorrent

libtorrent-2.0.10

19 Feb 12:18
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.0.9...v2.0.10

libtorrent-2.0.9

22 May 06:41
Compare
Choose a tag to compare

Changes since previous release:

  • fix issue with web seed connections when they close and re-open
  • fallocate() not supported is not a fatal error
  • fix proxying of IPv6 connections via IPv4 proxy
  • treat CGNAT address range as local IPs
  • add stricter checking of piece layers when loading torrents
  • add stricter checking of v1 and v2 hashes being consistent
  • cache failed DNS lookups as well as successful ones
  • add an i2p torrent state to control interactions with clear swarms
  • fix i2p SAM protocol parsing of quoted messages
  • expose i2p peer destination in peer_info
  • fix i2p tracker announces
  • fix issue with read_piece() stopping torrent on pieces not yet downloaded
  • improve handling of allow_i2p_mixed setting to work for magnet links
  • fix web seed request for renamed single-file torrents
  • fix issue where web seeds could disappear from resume data
  • extend save_resume with additional conditional flags
  • fix issue with retrying trackers in tiers > 0
  • fix last_upload and last_download resume data fields to use posix time
  • improve error messages for no_connect_privileged_ports, by untangle it from the port filter
  • fix I2P issue introduced in 2.0.0
  • add async tracker status query, post_trackers()
  • add async torrent status query, post_status()
  • support loading version 2 of resume data format
  • fix issue with odd piece sizes
  • add async piece availability query, post_piece_availability()
  • add async download queue query, post_download_queue()
  • add async file_progress query, post_file_progress()
  • add async peer_info query, post_peer_info()

libtorrent-1.2.19

22 May 06:40
Compare
Choose a tag to compare

Changes since previous version:

  • back-port load_torrent_*() functions
  • fix issue with odd piece sizes

libtorrent-2.0.8

23 Oct 11:30
64817e0
Compare
Choose a tag to compare

changes since previous 2.0.x release:

  • fix uTP streams timing out instead of closing cleanly
  • add write_torrent_file_buf() overload for generating .torrent files
  • add create_torrent::generate_buf() function to generate into a buffer
  • fix copy_file when the file ends with a sparse region
  • uTP performance, fix packet loss when sending is stalled
  • fix trackers being stuck after session pause/resume
  • fix bug in hash_picker with empty files
  • uTP performance, prevent premature timeouts/resends
  • add option to not memory map files below a certain size
  • settings_pack now returns default values when queried for missing settings
  • fix copy_file fall-back when SEEK_HOL/SEEK_DATA is not supported
  • improve error reporting from file copy and move
  • tweak pad file placement to match reference implementation (tail-padding)
  • uTP performance, more lenient nagle's algorithm to always allow one outstanding undersized packet
  • uTP performance, piggy-back held back undersized packet with ACKs
  • uTP performance, don't send redundant deferred ACKs
  • support incoming SOCKS5 packets with hostnames as source address, for UDP trackers
  • ignore duplicate network interface change notifications on linux
  • fix total_want/want accounting when forcing a recheck
  • fix merging metadata with magnet links added on top of existing torrents
  • add torrent_flag to default all file priorities to dont_download
  • fix &so= feature in magnet links
  • improve compatibility of SOCKS5 UDP ASSOCIATE
  • fix madvise range for flushing cache in mmap_storage
  • open files with no_cache set in O_SYNC mode

libtorrent-1.2.18

23 Oct 11:24
Compare
Choose a tag to compare

Changes since previous 1.2.x release.

  • fix issue where stop-when-ready would not close files
  • uTP performance, fix packet loss when sending is stalled
  • uTP performance, prevent premature timeouts/resends
  • uTP performance, more lenient nagle's algorithm to always allow one outstanding undersized packet
  • uTP performance, piggy-back held back undersized packet with ACKs
  • uTP performance, don't send redundant deferred ACKs
  • fix wanted_done/done accounting when force-rechecking
  • expose userdata via torrent_handle (back-port from 2.0)
  • fix renaming of filenames that are too long for the filesystem
  • made UPnP and LSD code avoid using select_reactor (to work around an issue on windows in boost.asio < 1.80)

libtorrent-2.0.7

17 Jul 17:20
Compare
Choose a tag to compare

Changes since last release:

  • fix issue in use of copy_file_range() on linux
  • avoid open-file race in the file_view_pool
  • fix issue where stop-when-ready would not close files
  • fix issue with duplicate hybrid torrent via separate v1 and v2 magnet links
  • added new function to load torrent files, load_torrent_*()
  • support sync_file_range() on linux
  • fix issue in write_torrent_file() when file size is exactly piece size
  • fix file_num_blocks() and file_num_pieces() for empty files
  • add new overload to make_magnet_uri()
  • add missing protocol version to tracker_reply_alert and tracker_error_alert
  • fix privilege issue with SetFileValidData()
  • add asynchronous overload of torrent_handle::add_piece()
  • default to a single hashing thread, for full checks
  • Fix bug when checking files and the first piece is invalid

As well as changes merged in from the 1.2.x branch:

  • fixed tracker connections spinning when hostname lookups stall
  • fixed error in pkg-config file generation in Jamfile
  • improve backwards compatibility with loading magnet link resume files
  • fix bind-to-device for tracker announces and UPnP
  • rename peer_tos setting to peer_dscp
  • fix bdecode support for large strings (>= 100 MB)

libtorrent-1.2.17

17 Jul 17:17
Compare
Choose a tag to compare

Changes since last release:

  • fixed tracker connections spinning when hostname lookups stall
  • fixed error in pkg-config file generation in Jamfile
  • improve backwards compatibility with loading magnet link resume files
  • fix bind-to-device for tracker announces and UPnP
  • rename peer_tos setting to peer_dscp
  • fix bdecode support for large strings (>= 100 MB)

libtorrent-2.0.6

16 Apr 14:14
Compare
Choose a tag to compare

Changes since 2.0.5:

  • fix issue creating a v2 torrent from torrent_info containing an empty file
  • make recheck files also update which files use partfile
  • add write_through disk_io_write_mode, which flushes pieces to disk immediately
  • improve copy file function to preserve sparse regions (when supported)
  • add function to truncate over-sized files part of a torrent
  • fix directory creation on windows shared folders
  • add flag to make add_files() not record file attributes
  • deprecate (unused) allow_partial_disk_writes settings
  • fix disk-full error reporting in mmap_disk_io
  • fixed similar-torrents feature for v2 torrents
  • fix potential unbounded recursion in add_completed_job, in disk I/O
  • deprecated (unused) volatile_read_cache setting
  • fix part files being marked as hidden on windows

libtorrent-1.2.16

16 Apr 14:11
Compare
Choose a tag to compare

changes since 1.2.15:

  • send User-Agent field in anonymous mode
  • fix python binding for settings_pack conversion
  • fix DHT announce timer issue
  • use DSCP_TRAFFIC_TYPE socket option on windows
  • update default ToS setting according to RFC 8622
  • keep trying to announce to trackers even when all fail
  • don't disable announcing from local endpoints because of temporary failures
  • fix issue in parsing UPnP XML response with multiple forwarding services

libtorrent-2.0.5

04 Dec 22:14
53f90cf
Compare
Choose a tag to compare
  • on windows, explicitly flush memory mapped files periodically
  • fix build with WolfSSL
  • fix issue where incoming uTP connections were not accepted over SOCKS5
  • fix several issues in handling of checking files of v2 torrents, esp. from magnet links
  • make the token limit when parsing metadata from magnet files configurable
  • fix issue with stalled pieces on disk full errors
  • fix missing python binding for file_progress_flags
  • fix torrent_file_with_hashes() to fail when we don't have the piece layers
  • restore path character encoding conversion for non UTF-8 locales on linux
  • fix use-after-free bug in make_magnet_uri
  • add write_torrent_file() to produce a .torrent file from add_torrent_params
  • allow loading v2 .torrent files without piece layer
  • fix issue with adding v2 torrents with invalid file root hash