v7.12.0-RC1
Pre-release
Pre-release
Overview
- The main feature of this release is the auto-generation of torrent tags from torrent titles that work in the background.
- Also, the release contains numerous bug fixes.
- The Tribler codebase was significantly refactored to make further development faster.
Features
- Tags auto generation by @drew2a in #6718
- Local search for tags by @drew2a in #6617
- Remote search by tags by @drew2a in #6708
- Add docker support by @xoriole in #6715, #6773
Bugfixes
- Fix processing URL-escaped characters by @drew2a in #6738
- Make sorting by name case insensitive by @kozlovsky in #6726
- Remove allow_exit_node_checkbox by @drew2a in #6736
- Customise categories for different pages by @drew2a in #6554
- Add exist_ok=True to mkdir by @drew2a in #6560
- Replace core_traceback by last_core_output by @drew2a in #6567
- Fixes for Tribler logger by @kozlovsky in #6585
- Fix api_key encoding/decoding by @kozlovsky in #6608, #6611, #6613, #6647
- Fix key error on metainfo fetch by @xoriole in #6610
- Fixes for GUI startup sequence by @ichorid in #6596
- Fixes #6665 - Graph can now go higher than TB. New PB Definition added. by @Joybuke in #6666
- Feature/report endpoint errors by @ichorid in #6649
- Set the correct range for Y-axis of the token balance graph by @kozlovsky in #6668
- Update Russian translation by @adem4ik in #6710
- Fix missing XML declaration by @overflw in #6703
- Swapped 'cancel' and 'download' buttons by @devos50 in #6727
- Decrease show threshold for tags by @drew2a in #6742
- Fixes #6747: OSError "The filename, directory name, or volume label syntax is incorrect" in dragEnterEvent by @kozlovsky in #6748
- Fixes #6745: Missed dependency: PopularityComponent requires TorrentCheckerComponent to be active by @kozlovsky in #6746
- Fixes AttributeError on removing downloads by @xoriole in #6909
- Handle race condition when deleting lock file by @kozlovsky in #6776
- Fix Ubuntu 21.04+ startup issue by @xoriole in #6734
- Fixes #6777: suppress PermissionError in on_save_resume_data_alert by @kozlovsky in #6779
- Add null check to confirm_clicked_callback by @drew2a in #6798
- Handle OSError in TriblerWindow.clicked_force_shutdown() by @kozlovsky in #6816
- Handle ValueError "Data is not a bencoded string" in TorrentInfoEndpoint.get_torrent_info() by @kozlovsky in #6814
- Wrap Download.on_metadata_received_alert() with @check_handle decorator by @kozlovsky in #6818
- Fix a crash in the Events tab of the Debug pane by @kozlovsky in #6809
- Escape non-ASCII symbols when writing the tag value to the log by @kozlovsky in #6812
- Handle possible duplicates in random tags generated by tag_torrent by @kozlovsky in #6820
- Add missed arguments to RunTriblerArgsParser by @kozlovsky in #6804
- Replace
get
byselect.limit
in BandwidthDatabase.get_latest_transaction by @drew2a in #6821 - Add NPE check to handle_uri by @drew2a in #6829
- Add
is_dir()
check toadd_directory_dialog
by @drew2a in #6835 - Add
UnicodeEncodeError
to the except block by @drew2a in #6836 - Fix download progressbar paint issue by @xoriole in #6910
- Fix an error message that reports milliseconds as seconds by @kozlovsky in #6914
- Handle non-utf8 Tribler Core output in Tribler GUI by @kozlovsky in #6917
Code improvements
- Use ipv8 as an external dependency by @drew2a in #6757
- Add maybe_component by @drew2a in #6557
- Refactor/remove obsolete upgrades by @ichorid in #6558
- Run Upgrader in a GUI thread by @ichorid in #6559
- Remove unused methods by @devos50 in #6605
- Make notifier more generic by @drew2a in #6702
- Move
discovery_booster
to ipv8 component by @drew2a in #6719 - Move EVA protocol to ipv8 component by @drew2a in #6723
- Add session context manager by @drew2a in #6724
- Remove common package by @drew2a in #6755
- Statically typed notifier by @kozlovsky in #6728
- Enable origin tracking for coroutine objects by @kozlovsky in #6762
- Refactoring the folders structure by @drew2a in #6803
- Remove popularity community experiments by @drew2a in #6805
- Rename QtSingleApplication.activation_window() to tribler_window by @drew2a in #6830
- Remove pre-commit by @drew2a in #6837
- Refactor rest utils by @drew2a in #6838
- Fix build for release 7.12 by @kozlovsky in #6896
- Update Debian build by @xoriole in #6901
- Updated IPv8 pointer by @qstokkink in #6669
- Update issue templates by @drew2a in #6580
- [Snyk] Security upgrade pillow from 8.4.0 to 9.0.0 by @snyk-bot in #6705
- [Snyk] Security upgrade pillow from 9.0.0 to 9.0.1 by @snyk-bot in #6765
Documentation fixes
- Update development on linux by @drew2a in #6536
- Fixes #6624: specify the exact version of
mistune
library in doc/requirements.txt by @kozlovsky in #6625 - Specify exact version of MarkupSafe in doc requirements by @kozlovsky in #6781
- Add Faker and sentry as common dependency by @xoriole in #6656
- Added v7.11 download badge to README by @devos50 in #6768
- Fix broken link by @drew2a in #6796
- Add python 3.9 and python 3.9 badges by @drew2a in #6797
Test improvements
- Make --core and --gui-test-mode separate flags with all combinations possible by @kozlovsky in #6602
- Using SelectorEventLoop during tests by @devos50 in #6527
- Apply MockIPv8 key injection by @drew2a in #6544
- Added small delay after mouse click in GUI test by @devos50 in #6547
- Make CoreExceptionHandler scope-dependent by @drew2a in #6543
- Change mock type for encode_message by @drew2a in #6540
- Use in-memory SQLite DB for Tags in GUI test mode by @ichorid in #6574
- Fix and speedup test_drop_silent_peers by @ichorid in #6578
- Simplify GUI-Core startup sequence by @ichorid in #6573
- Improve tests for patch_import.py by @drew2a in #6588
- Replace random char generation by fake words by @drew2a in #6592
- Make sure generated tags have a valid length by @devos50 in #6615
- Remove spam in pytest output by @kozlovsky in #6620
- Fix gui tests stability by @kozlovsky in #6619
- Fix for #6603 by @drew2a in #6629
- Fixed channel subscribe GUI test by @devos50 in #6643
- Remove SOCKS component from GUI test mode requirements by @ichorid in #6651
- Fix #6653 Sentry test failures by @drew2a in #6694
- Add faker and sentry_sdk as common modules to mock during doc build by @xoriole in #6675
- Fix unstable test_channels_peers_mapping_drop_excess_peers by @kozlovsky in #6731
- Fix run_bandwidth_crawler script by @kozlovsky in #6730
- Fix tunnel experiments by @kozlovsky in #6732
- Fix unstable tests by @kozlovsky in #6763
- Add "no_parallel" pytest's mark by @drew2a in #6799
- Add no_parallel to pytest.ini by @drew2a in #6800
- For test run with '--no-parallel' argument, skip all "normal" tests by @drew2a in #6824
- Fix Tribler startup/shutdown and GUI tests stability by @kozlovsky in #6828
- Refactor add_fake_torrents_channels fixture by @drew2a in #6827
New Contributors
Full Changelog: v7.11.0...v7.12.0-RC1