Summary
Fixes various issues in the previous release, such as tracker-related segfaults and very slow SCGI responses.
Improved thread and scheduler code which will help continued efforts to make rtorrent multi-threaded.
There has been an increase in donations, which has allowed me to spend more time on development. These are greatly appreciated.
Donations make futher development possible, and as such are highly appreciated:
- Paypal
- Patreon
- SubscribeStar
- Bitcoin: 1MpmXm5AHtdBoDaLZstJw8nupJJaeKu8V8
- Ethereum: 0x9AB1e3C3d8a875e870f161b3e9287Db0E6DAfF78
- Litecoin: LdyaVR67LBnTf6mAT4QJnjSG2Zk67qxmfQ
- Cardano: addr1qytaslmqmk6dspltw06sp0zf83dh09u79j49ceh5y26zdcccgq4ph7nmx6kgmzeldauj43254ey97f3x4xw49d86aguqwfhlte
What's Changed
-
Fixed slow SCGI replies.
-
Cleaned up thread/scheduler code.
- Cleaned up thread-related code. by @rakshasa in #1446
- Use new thread event loop method. by @rakshasa in #1447
- Fix scheduler access. by @rakshasa in #1455
- Feature/chronos timeouts by @rakshasa in #1451
- Feature/thread worker cleanup by @rakshasa in #1462
- Export thread_self. by @rakshasa in rakshasa/libtorrent#343
- Access thread-local Thread* using a function rather than an extern va… by @rakshasa in rakshasa/libtorrent#366
- Access thread_disk/main/net/tracker through static member functions. by @rakshasa in rakshasa/libtorrent#368
- Fixed thread initialization and event loop. by @rakshasa in rakshasa/libtorrent#371
- Feature/chronos timeouts by @rakshasa in rakshasa/libtorrent#374
- Feature/new scheduler by @rakshasa in rakshasa/libtorrent#391
- Fix/various cleanup by @rakshasa in rakshasa/libtorrent#393
- Added missing pop_back in scheduler. by @rakshasa in rakshasa/libtorrent#394
- Feature/test interrupt by @rakshasa in rakshasa/libtorrent#402
- Cleaned up scheduler handling in thread and fixed issue causing callback process lag in main thread. by @rakshasa in rakshasa/libtorrent#404
-
Improved example configs.
-
Code bug fixes and cleanup.
- Fixed LUA compilaition issue. by @rakshasa in #1435
- Use priotity_enum by @neheb in #1450
- Check for NULL when calling freeaddrinfo. by @rakshasa in rakshasa/libtorrent#341
- Fix/tracker iterator by @rakshasa in rakshasa/libtorrent#346
- Don't remove TrackerController if it isn't initialized due to excepti… by @rakshasa in rakshasa/libtorrent#347
- Replace usleep with pthread_join. by @rakshasa in rakshasa/libtorrent#348
- Remove register (C++17) by @PPN-SD in rakshasa/libtorrent#349
- fix compilation with g++8 by @neheb in rakshasa/libtorrent#344
- Various fixes to tracker issues. by @rakshasa in rakshasa/libtorrent#354
- use make_unique by @neheb in rakshasa/libtorrent#355
- replace some binds with lambdas by @neheb in rakshasa/libtorrent#357
- bind to lambda conversions by @neheb in rakshasa/libtorrent#358
- clang-tidy: use default member init by @neheb in rakshasa/libtorrent#359
- Fixed getaddrinfo unit test. by @rakshasa in rakshasa/libtorrent#363
- move ignore deprecated declarations up by @neheb in rakshasa/libtorrent#361
- Fixed getaddrinfo unit tests for ipv6. by @rakshasa in rakshasa/libtorrent#364
- Fixed thread base unit tests to run try_lock in a separate thread. by @rakshasa in rakshasa/libtorrent#365
- remove openssl alternative code by @neheb in rakshasa/libtorrent#362
- clang-tidy: fix special-member-functions warnings by @neheb in rakshasa/libtorrent#360
- replace various typedefs with using by @neheb in rakshasa/libtorrent#367
- no dl by @neheb in rakshasa/libtorrent#370
- various clang-tidy and compilation fixes by @neheb in rakshasa/libtorrent#369
- lock_guard to scoped_lock by @neheb in rakshasa/libtorrent#372
- avoid new string allocation by @neheb in rakshasa/libtorrent#373
- some compiler fixes by @neheb in rakshasa/libtorrent#375
- default initialize some stuff by @neheb in rakshasa/libtorrent#376
- loop to insert by @neheb in rakshasa/libtorrent#377
- add back printf format attribute by @neheb in rakshasa/libtorrent#378
- clang-tidy: use auto by @neheb in rakshasa/libtorrent#379
- remove sys/param and sys/mount headers by @neheb in rakshasa/libtorrent#381
- fix some wrong formats by @neheb in rakshasa/libtorrent#380
- clang-tidy: use C++ casting by @neheb in rakshasa/libtorrent#382
- unique_ptr conversions by @neheb in rakshasa/libtorrent#384
- add extra CI by @neheb in rakshasa/libtorrent#383
- Fixed missing run key. by @rakshasa in rakshasa/libtorrent#388
- remove pointless fill_n by @neheb in rakshasa/libtorrent#389
- clang-tidy: default initialize members by @neheb in rakshasa/libtorrent#387
- clang-tidy fixes by @neheb in rakshasa/libtorrent#385
- Fix/delay scrape request by @rakshasa in rakshasa/libtorrent#398
- constexpr conversions by @neheb in rakshasa/libtorrent#395
- change HAVE_INOTIFY to USE_ by @neheb in rakshasa/libtorrent#399
- use more override by @neheb in rakshasa/libtorrent#386
- various clang-tidy fixes by @neheb in rakshasa/libtorrent#396
- convert deque pointer to unique_ptr by @neheb in rakshasa/libtorrent#403