Releases: aldenml/libtorrent4j
Releases · aldenml/libtorrent4j
2.0.4-21
- using libtorrent master
- lt:add write_torrent_file(), a function to save a .torrent file from an
add_torrent_params - lt:don't require piece layers in v2 torrent files, but ensure they are
valid if they are present - lt:use can_disconnect in torrent when is finished
- lt:use can_disconnect in bt_peer_connection upload-to-upload connection
- lt:fix seed rank calculation when we're the only known seed
- lt:fix issue when checking certain v2 torrents
- lt:make the hash_picker tolerate a valid-hashes buffer that's lying
- lt:fix issue where a peer may not send a hash request after a piece failure
- lt:fix issue when asking for file progress right when starting a
force-recheck - lt:source code cleanup, performance and stability
2.0.4-20
- using libtorrent master
- added Sha256Hash
- lt:updated libdatachannel to v0.13.4
- lt:fix checking torrents
- lt:removed time_critical_mode from piece_picker::pick_pieces,
peer_connection and request_blocks. - lt:ensure peer_info::client is always valid UTF-8
- lt:don't check pieces we already have (such as pad files), when running a
full check - lt:improve piece-picker pad-file granularity to bytes (from blocks)
- lt:improve precision of total_wanted and total_wanted_done
- lt:fix shutdown issue with incoming SSL connections
- lt:fix issue with adding v2 torrents with invalid file root hash
- lt:simplify some checks of pieces against the ignored list in the piece
picker - lt:fix piece picker bug causing double-picks with prefer-contiguous enabled
- lt:source code cleanup, performance and stability
2.0.3-19
- using libtorrent master
- updated to boost 1.76.0
- lt:clear seed flag when we receive an incomplete bitfield from a peer
- lt:improve handling of seed flag in PEX messages
- lt:mitigate accounting error in http seed connection
- lt:fix issue of accruing unlimited DHT node candidates when DHT is disabled
- lt:fix bug in parsing chunked encoding
- lt:a better fix to active, seeding and finished duration timers
- lt:fix incorrect reporting of active_duration when entering graceful-pause
- lt:fix redundant file_size check in torrent_info
- lt:fix support for the executable file permission attribute (and avoid
making every file executable, on unix-like systems) - lt:source code cleanup, performance and stability
libtorrent4j-2.0.3-18
- fixed AlertType for missing file_prio_alert entry
libtorrent4j-2.0.3-17
- using libtorrent master
- improved java api layer
- lt:fix issue creating and loading v2 torrents with empty files
- lt:updated libdatachannel to v0.12.2
- lt:source code cleanup, performance and stability
libtorrent4j-2.0.3-16
- using libtorrent master
- improved java api layer
- lt:updated libdatachannel to v0.12.1
- lt:fix issue where hash2 disk jobs would not be assigned to the hashing
threads in the disk I/O thread pool - lt:add first and last piece range to sequential download mode
- lt:make mmap disk io shutdown more reliable. don't ever miss a notification
- lt:fix identify BitSpirit 3.6
- lt:source code cleanup, performance and stability
libtorrent4j-2.0.3-15
- using libtorrent master
- updated to OpenSSL 1.1.1k
- using android NDK r22b
- lt:add new torrent_file_with_hashes() which includes piece layers for
creating .torrent files - lt:use /etc/ssl/cert.pem to validate HTTPS trackers and web servers on
MacOS - lt:raise the severity of peers sending invalid messages to 'peer_error'.
Simplify m_upload_only to just record the explicit upload-only state
communicated via the extension message. Implied upload only is moved to
the upload_only() query. Add simulations for peer connection tests.
Mostly for have-all, have-none and bitfields, and some simple invalid
requests. This will serve as a platform to add more sophisticated tests. - lt:restore peer_connection::is_seed to not take m_have_all into account.
It caused some regression in edge cases - lt:add a file_prio_alert, posted when file priorities are applied
- lt:prefer __builtin_popcountl() over portable C implementation of
popcnt. This enables the ARM64 SIMD instruction on Apple M1 - lt:fix issue with setting file priorities and saving resume data. The
need-save-resume flag should not be set until after the new file
priorities have been applied. Don't set the need-save-resume flag just
by loading the resume data (when applying the file priorities into the
piece priorities) - lt:source code cleanup, performance and stability
libtorrent4j-2.0.2-14
- using libtorrent master
- minimum supported Android 32 bits API >= 19
- minimum supported Android 64 bits API >= 21
- using android NDK r22
- using android prebuilt toolchain
- using android LLD linker
- lt:fix size_on_disk patch
- lt:fix torrent_info::v2 to be correct after freeing piece layers from
torrent_info - lt:allow no-interest timeouts of peer connections before all connections
slots are full - lt:add flag to force canonical file order and padding for v1-only torrents
- lt:return nullptr instead of crashing in get_storage_impl
- lt:fix issue where peers entering upload-mode cannot leave upload-mode
- lt:fix issue where a DHT message would count as an incoming connection
- lt:source code cleanup, performance and stability
libtorrent4j-2.0.2-13
- using libtorrent master
- updated to OpenSSL 1.1.1j
- improved java api layer
- lt:updated libdatachannel to v0.11.9
- lt:deprecate sha-1 file hashes (torrent file extension field)
- lt:add size_on_disk() to file_storage and torrent_info, reporting the total
size of non-pad files - lt:fix issue when failing to parse outgoing_interfaces setting
- lt:fix issue where set_piece_hashes() would not propagate file errors
- lt:fix super-seeding issue that could cause a segfault
- lt:mark need-save-resume when adding a tracker
- lt:fix need_save_resume_data() for renaming files, share-mode, upload-mode,
disable- pex, lsd, and dht. - lt:fix issue in parsing invalid webtorrent tracker responses
- lt:fix incoming TCP connections when using tracker-only proxy
- lt:correctly store "max_uploads" value in resume data
- lt:fix error messages related to opening files, specifically truncate
and allocate failures (which currently are incorrectly attributed to
open file) - lt:add work-around for systems without fseeko() (such as Android)
- lt:source code cleanup, performance and stability
libtorrent4j-2.0.2-12
- using libtorrent master
- fixed missing fseeko64 symbol at runtime
- fixed download priority type mismatch (now it is byte)
- lt:cleanup use of _FILE_OFFSET_BITS
- lt:ensure we don't attempt to make outgoing connections to RTC peers
- lt:don't announce stopped-event to websocket trackers. This (appears) to
solve a shutdown stall where we send stopped-announces after aborting
outstanding announces (including the persistent websocket connection).
The announce causes the persistent connection to be re-established and
sometimes not torn down properly again, to complete the shut down - lt:remove misleading (and redundant) peer log message
- lt:increase the default setting for max_allowed_in_request_queue
from 500 to 2000. The entries in this queue are relatively small,
and allowing too few may negatively impact high-throughput peers - lt:deprecate volatile_read_cache
- lt:source code cleanup, performance and stability