Tribler Changelog

What's new in Tribler 7.13.2

Feb 27, 2024
  • Fix network name is no longer available error on 7.13 by @xoriole in #7912

New in Tribler 7.13.0 (Nov 26, 2023)

  • Features:
  • 100x speedup for full-text search queries with better quality by @kozlovsky in #7025, #7166, #7259
  • Upgrade the TagComponent to the KnowledgeComponent by @drew2a in #7070
  • #2455 Added edit metadata GUI elements by @devos50 in #7112
  • Update Popularity community by @xoriole in #6950
  • Add Tribler translation to Spanish by @Manuel-Senpai in #7235, #7246
  • Bugfixes:
  • Fix #7295 invalid health records infect Tribler nodes and spread from machine to machine fixed by @kozlovsky & @drew2a in #7286, #7313, #7322
  • Add ProcessLocker to ensure that no more than one Tribler GUI/Core process runs locally at any moment by @kozlovsky in #7212
  • Hopefully fix #7137 CoreConnectTimeoutError: Could not connect with the Tribler Core within 120 seconds by @kozlovsky in #7251
  • #6994 Tribler Core process continues to work after the GUI process crash by @kozlovsky in #6995
  • Fix TriblerProcess.is_running() by @kozlovsky in #7461
  • #7556 ConnectionResetError: Connection lost by @kozlovsky in #7566
  • #7547 TimeoutError on getting torrentinfo by @xoriole in #7553
  • #7564 OSError in SocksServersComponent: error while attempting to bind on address by @kozlovsky in #7565
  • #7538 Incorrect tracker status shown on Tracker tab by @xoriole in #7555
  • Add Logging for Slow Database Sessions by @kozlovsky in #7494
  • Handle no space available situation on upgrade by @xoriole in #7496
  • Consider HealthInfo with negative seeders and leechers as invalid by @drew2a in #7487
  • The get_circuit_slots method of DebugEndpoint should handle the case when tunnel_community is None by @kozlovsky in #7504
  • Properly stop the non-primary process by @kozlovsky in #7349
  • Detect slow coroutines and freezes in the asyncio loop by @kozlovsky in #7414
  • Fixes #7344: AssertionError "transport is not None" in aiohttp/web_request.py by @kozlovsky in #7385
  • Temporarily increase the core manager API port check timeout to be sure it is big enough by @kozlovsky in #7419
  • Profiling of slow coroutines by @kozlovsky in #7446
  • Fix the step interval of DiscoveryBooster by @kozlovsky in #7449
  • 100x speedup of EdgeWalk.take_step() by caching results of GigaChannelCommunity.guess_address() by @kozlovsky in #7450
  • Add extended logging to RESTManager.site.start() call by @kozlovsky in #7451
  • Send events to GUI only before shutdown and in the proper order by @kozlovsky in #7364
  • Skip on_tribler_exception if EventsEndpoint is shutting down. by @drew2a in #7357
  • Decrease the frequency of the downloads request by @drew2a in #7377
  • Check on the ancient version by @drew2a in #7383
  • Fix #7386 "The connection to the Tribler Core was lost" by @xoriole in #7387
  • Ignore old responses for the DownloadsPage by @drew2a in #7391
  • Stop sending requests after shutdown by @drew2a in #7405
  • Suppress ConnectionResetError by @drew2a in #7404
  • Make KnowledgeRulesProcessor less aggressive by @drew2a in #7418
  • Add queue for multithread processing by @drew2a in #7417
  • Fix crash on Ubuntu while selecting File Chooser by @xoriole in #7484
  • Fix empty saveas issue by @drew2a in #7346
  • Read the language file in utf-8 encoding. by @drew2a in #7355
  • Check EditMetadataDialog on closed by @drew2a in #7371
  • Fix KeyError for translations by @drew2a in #7370
  • Refactor the Downloads page by @drew2a in #7378
  • Add a description to the error when trying to download a newer version of the channel by @kozlovsky in #7380
  • Fixes #7395 "Labels on Discovered channels are missing" by @kozlovsky in #7402
  • Fix FileNotFoundError by @drew2a in #7401
  • Fix #7453 KeyError when clicking on a personal channel by @xoriole in #7454
  • Fix invalid handle when there is no torrent metadata by @xoriole in #7415
  • Use a separate misc table for the KnowledgeDB by @drew2a in #7413
  • Add reprocess feature for KnowledgeRulesProcessor by @drew2a in #7379
  • Add CONTENT_ITEM relation by @drew2a in #7445
  • Fixes the download torrent dialog behavior after closing it by clicking somewhere outside the dialog area by @kozlovsky in #7465
  • Fixes #7473 FileNotFoundError when displaying the settings page by @kozlovsky in #7474
  • Handle IndexError by @drew2a in #7480
  • Fixes #7462 The Tribler window does not unminimize when clicking on a torrent file by @kozlovsky in #7463
  • Fixes #7467 ConnectionResetError by @kozlovsky in #7472
  • Fixes the space bug in the Sentry Scrubber by @drew2a in #7470
  • Fixes #7406 UnicodeDecodeError in on_tracker_error_alert by @kozlovsky in #7468
  • Print Queue is full once per 5 seconds by @drew2a in #7493
  • Accept error values of any type in TriblerProcess.set_error by @kozlovsky in #7537
  • #7558 creating large torrent files by @xoriole in #7559
  • #5833 WatchFolder PermissionDenied by @drew2a in #6966, #7016
  • #6884 Add Magnet Dialog disappears until restarted by @drew2a in #6885
  • #6890 Fix Eva InvalidStateError by @drew2a in #6891
  • #6833 Avoid incorrect padding by @drew2a in #6898
  • #6973 Rewrite window geometry restoring by @drew2a in #7008
  • #6987 Handle incorrect tracker URLs by @drew2a in #7012
  • #3037 Fix "bencoded item count limit exceeded" by @drew2a in #7015
  • #7051 Fix stack overflow for a torrent with a deep directory structure by @kozlovsky in #7052
  • #5816 RuntimeError: nested asn1 error by @drew2a in #7128, #7302
  • Fix initialization of Ipv8Endpoint in RESTComponent by @kozlovsky in #7044
  • #7053 Tribler becomes unresponsive with a large tags.db by @drew2a in #7062
  • Fix #7065 error while attempting to bind on address by @drew2a #7071
  • #7080 The Upgrader might not copy some files by @drew2a in #7083
  • #7077 Tribler is asking to upgrade version too frequently by @drew2a in #7101, by @vi in #7102
  • #7107 Error on rendering tablecontentdelegate by @xoriole in #7108
  • #6699 the width of the Size column on Windows when the display scaling is more than 100% by @kozlovsky in #7131
  • #7056 adding torrent with invalid magnet link to channel by @xoriole in #7058
  • #7106 crash when file progress is empty by @xoriole in #7114
  • #7149 Core Tribler notifier should work in async mode by @kozlovsky in #7151
  • #7154 Error on clicking blank space below the item list on personal channel by @drew2a in #7155
  • #7157 RuntimeError: invalid torrent handle used by @drew2a in #7157
  • #7172 ValueError: invalid literal for int() with base 10 by refactoring get max_lines logic by @drew2a in #7173
  • #7181 Enable token balance refresh only if widget is available by @xoriole in #7201
  • #7059 Handle non-existing file in torrent info endpoint by @xoriole in #7203
  • Link detection fix by @Dmole in #6716
  • #7041 Request Error while pressing the "download" button by @drew2a in #7211
  • #7177 Tribler does not close if left idle for a few hours by @xoriole in #7202
  • #7213 ValueError: invalid literal for int() with base 10 in TorrentDef.is_private() by @kozlovsky in #7214
  • #7216 AssertionError in RestManager.stop() by @kozlovsky in #7217
  • #7218 Do not load Debug Window if settings is not available yet by @xoriole in #7219
  • #7223 UnicodeDecodeError in on_metadata_received_alert by @drew2a in #7224
  • #7225 ClientConnectorError: Cannot connect to host by @drew2a in #7226
  • #7117 RuntimeError: invalid torrent handle used by @drew2a in #7230
  • #7231 Ignore payout in the case of the OrmError happens by @drew2a in #7236
  • #7271 ValueError: "Unable to convert 222222 to QColor" by @kozlovsky in #7272
  • #7253 Tribler does not run if the state directory does not already exist by @kozlovsky in #7257
  • #7187 A download in GUI fluctuates between "0%" and "Seeding" by @drew2a in #7205
  • #7318 GUI downloads status update by @drew2a in #7319
  • #7316 mathematical mistake in the download progress bar drawing by @drew2a in #7317
  • #7321 KeyError while surfing through a channel's content by @kozlovsky in #7323
  • Fix item_rank(), torrent_rank(), freshness_rank() functions by @kozlovsky in #7338
  • #7333 On GUI side, handle Core REST API responses without data by @kozlovsky in #7334
  • Rename the column with a torrent's creation date from "Updated" to "Created" to avoid confusion by @kozlovsky in #7340
  • #6842 Some settings are not used if torrent loaded from watch folder by @drew2a in #6863
  • #7314 long shutdown by @drew2a in #7315
  • #7188 Add shutdown for the KnowledgeRulesProcessor by @drew2a in #7189
  • #7192 Task was destroyed but it is pending! Transfer.start_request() by @drew2a in #7193
  • Remove streaming related sentences from main README.md by @drew2a in #6826
  • Code improvements:
  • #7158 Limit the log size by @drew2a in #7160
  • Obfuscate machine name for Sentry events by @drew2a in #7023
  • Add core stdout breadcrumb by @drew2a in #7022, #7033
  • #7066 Extract a real core error from CoreError for the Sentry Reporter by @drew2a in #7072
  • Simplify Session class by @drew2a in #6955
  • Add "subclass match" for session.get_instance() by @drew2a in #7060
  • Improve the EVA protocol by @drew2a in #6831, #6889, #6878, #6882, #6883, #6887
  • Config refactoring by @drew2a in #6879
  • Add typings to the Download class by @drew2a in #6880
  • Add logging for LibTorrent events by @drew2a in #6867
  • Add format_error_message function by @drew2a in #6881
  • Simplify base64 conversion in get_pieces_base64 by @drew2a in #6897
  • Stricter signature for ErrorHandler.gui_error() by @kozlovsky in #6846
  • Extract the run_threaded function to the pony_utils.py by @drew2a in #7150
  • Refactoring of the tail function by @drew2a in #7159
  • Remove asyncio logger level specification. by @drew2a in #7175
  • [Snyk] Security upgrade setuptools from 39.0.1 to 65.5.1 by @xoriole in #7165
  • Refactor hi-level VersionHistory logic. by @drew2a in #7182
  • Add resource_type for subjects in queries in the KnowledgeDatabase by @drew2a in #7153
  • Refactoring of the tiny_tribler_service.py by @drew2a in #7200
  • Add EventsEndpoint.shutdown() by @drew2a in #7196
  • Disable BEP33 health check by @xoriole in #7275
  • Fix asyncio.create_task() calls by @drew2a in #7300
  • Improve the AsyncGroup by @drew2a in #7306
  • Fix critical issues reported by Codacy by @drew2a in #7309
  • Apply autoformat + optimise imports by @drew2a in #7320
  • Update ipv8 to the version 2.10 by @drew2a in #7285
  • Bump pillow from 9.0.1 to 9.3.0 by @dependabot in #7198
  • Bump setuptools from 60.0.2 to 65.5.1 by @dependabot in #7241
  • Bump cryptography from 35.0.0 to 39.0.1 by @dependabot in #7301
  • Build/CI improvements:
  • Fix ImportError: DLL load failed while importing libtorrent: The specified module could not be found by @kozlovsky in #7533
  • Fixes #7047: Update the build documentation by @drew2a in #7244
  • Build Tribler by using GitHub Actions by @drew2a in #6903
  • Build updates by @xoriole in #6905
  • Update requirements.txt by @drew2a in #6839
  • Refactoring of workflows by @drew2a in #6913
  • Add GitHub actions for PR (documentation, pytest, coverage) by @drew2a in #6850
  • Add .codeclimate.yml by @drew2a in #6849
  • Add codacy by @drew2a in #6860
  • Add coverage badge by @drew2a in #6868
  • Add codecov by @drew2a in #6869
  • Add bandit.yml by @drew2a in #6871
  • Add guitest.yml by @drew2a in #6902
  • Use project-token for codacy by @drew2a in #6870
  • Fix upload_coverage.yml by @drew2a in #6861
  • Swap download action by dawidd6/action-download-artifact@v2 by @drew2a in #6864
  • Fix PR event by @drew2a in #6922
  • Add pip cache for GitHub Actions by @drew2a in #6923
  • Add windows_dependencies action by @drew2a in #6925
  • Add workflow_dispatch for ubuntu build by @drew2a in #6927
  • Build Tribler binaries for win by @drew2a in #6920
  • GitHub Actions: Change order of upload value by @drew2a in #6931
  • Build Tribler binaries for macOS by @drew2a in #6928, #7276
  • Add LOG_LEVEL variable for win and ubuntu build by @drew2a in #6933
  • [mac] Fix Tribler.app is damaged by @drew2a in #6935
  • Add pytest_custom_ipv8.yml by @drew2a in #6943
  • Add invalidate-cache flag by @drew2a in #6949
  • Pass secrets to callable workflows. by @drew2a in #6953
  • Add the sign step to the windows build by @drew2a in #6946
  • Fix extract_swagger.py by @drew2a in #6965
  • Fix failing GUI test on Linux Github action by @drew2a in #6999
  • Add the requirements-key parameter to the pyenv GitHub Action by @drew2a in #7028
  • Specify the requirements-key parameter for documentation.yml by @drew2a in #7029
  • Add the action for screenshots publishing by @drew2a in #7084
  • Fix pyenv GitHub Action by @drew2a in #7094
  • Add scripttest.yml by @drew2a in #7105
  • Update GitHub Actions versions by @drew2a in #7113
  • Add Windows and macOS GUI tests to GitHub Actions by @drew2a in #7115
  • Run checks only if it is necessary by @drew2a in #7130
  • #7174 Add support for unannotated tags in GitHub Actions builds by @drew2a in #7176
  • Use shared env variables in !PR.yml by @drew2a in #7239
  • Update yappi version by @drew2a in #7249
  • Update versions of Qt libraries by @drew2a in #7256
  • Fix workflows context by @drew2a in #7267
  • Specify ubuntu and win versions by @drew2a in #7273
  • Add github.ref for the events: push and workflow_dispatch by @drew2a in #7277
  • Remove codacy check by @drew2a in #7279
  • Add a workaround for Apple Silicon by @drew2a in #7281
  • Test improvements:
  • Add a specific label to unlock PR checks for outside collaborators by @drew2a in #7243
  • Add profiling for pytest by @drew2a in #7135
  • Add looptime by @drew2a in #6894
  • Add --reruns 1 for pytests by @drew2a in #7169
  • Add --reruns-delay 1 by @drew2a in #7183
  • Add an ability to send Sentry reports for developers by @drew2a in #6886
  • Remove await statements from with db_session blocks by @drew2a in #7170
  • Fix terminated by timeout exception by @drew2a in #6848
  • #6854 timeouts in tests by @drew2a in #6855
  • Override windows-latest pytest timeout by @drew2a in #6862
  • Set asyncio_mode=auto by @drew2a in #6866
  • Add tests for the Transfer class by @drew2a in #6888
  • Fix random frozen ProcessChecker tests by @drew2a in #6954
  • Fix speed_test_e2e.py by @drew2a in #7092
  • Remove spam from pytest logs by @drew2a in #7110
  • #7118 by removing caplog from async functions test_gui_process_watcher.py by @drew2a in #7119
  • Increase EvaSelectRequest timeout for test_remote_select_channel_contents_happy_eyeballs by @drew2a in #7121
  • Divide pytest into two categories: for a draft PR and for a ready PR by @drew2a in #7123
  • Add macOS and windows builds as PR checks by @drew2a in #7129
  • Remove unnecessary async statements by @drew2a in #7139
  • #7132 timeouts in Windows GUI tests by @drew2a in #7141
  • Call app.shutdown() for rest_api fixture by @drew2a in #7144
  • Update "io" and "pytest" dependencies by @drew2a in #7145
  • Fix unstability in test_default_sorting_with_fts by @kozlovsky in #7152
  • Change loop fixture by @drew2a in #7127
  • Fix #7140 Remove mocks of stdout and stderr by @drew2a in #7156
  • Refactoring of the test_drop_silent_peer by @drew2a in #7163
  • Change await event logic for the test_remote_select_torrents function by @drew2a in #7171
  • Replace the loop fixture with the event_loop fixture. by @drew2a in #7168
  • Extract environment variables into shared.env by @drew2a in #7185
  • Add pytest-sentry for pytest runs to collect statistics about flaky test by @drew2a in #7186
  • #7192 Transfer tests by @drew2a in #7227
  • #7190 Add unload for Tunnel Community by @drew2a in #7191
  • #7228 Add session.cleanup() by @drew2a in #7229
  • Fix Ubuntu GUI tests tests by @drew2a in #7255
  • Downgrade pyqtgraph version by @drew2a in #7265
  • Fix unstable test_tribler_process_mark_finished by @kozlovsky in #7325
  • Update pytest by @drew2a in #7326
  • Modify the pytest output to include the execution duration for all tests by @drew2a in #7482
  • Fix GUI Test non-zero exit code by @xoriole in #7501
  • Fix calling await app.shutdown() in REST API tests by @kozlovsky in #7502
  • Fix the get_torrent_health endpoint in GUI tests by @kozlovsky in #7505
  • Use TestError instead of AssertionError in test to avoid confusion by @kozlovsky in #7503
  • Fix print issue on core manager repeated test by @xoriole in #7511
  • Disable logging in the faker module for pytest. by @drew2a in #7348
  • Disable logging in tests for faker.factory and PyQT5.uic by @drew2a in #7384
  • Fix test check core API port timeout by @kozlovsky in #7420
  • Add tribler_stopped tag to the Sentry by @drew2a in #7365
  • Sentry: add the field additional_information by @drew2a in #7394
  • Add an option to cease the collection of breadcrumbs by @drew2a in #7426
  • Increase the size of log files from 100 kilobytes to 1 megabyte, and the number of log backups from 1 to 2 by @kozlovsky in #7455
  • Pin pip version for the macOS build by @drew2a in #7375
  • Remove events and requests from Sentry report by @drew2a in #7376

New in Tribler 7.12.1 (Jan 19, 2023)

  • Overview:
  • This release should greatly improve the speed and stability of Tribler startup.
  • Now, if a user has a large number of downloads, Tribler windows should open much faster.
  • All different errors of type "Tribler GUI cannot connect to Tribler Core" should go away.
  • Tribler should not crash anymore while copying files from the previous directory.
  • The copying of the state directory is now atomic, and files should not be corrupted if the copying is interrupted in the middle.
  • No more orphan Core processes if the GUI process was suddenly terminated.
  • The token balance is now hidden until the algorithm for calculating the balance is updated.
  • Some bugs that caused Tribler crashes were fixed.
  • Bugfixes:
  • Load download checkpoints in the background by @kozlovsky in #7024
  • Provide atomicity of state dir copying by @kozlovsky in #7055
  • Handle exceptions in UpgradeManager by @kozlovsky in #7007
  • EventManager's timeout should ignore the upgrade duration by @kozlovsky in #7006
  • Fix reconnection logic in EventRequestManager by @kozlovsky in #7001
  • Fix CoreConnectTimeoutError by calculating the correct timeout for the request by @kozlovsky in #7054
  • Fix QNetworkReply.UnknownNetworkError (99) when connecting to Core by @kozlovsky in #7019
  • Unconditionally include RESTComponent when starting Tribler Core by @kozlovsky in #7045
  • Fix initialization of Ipv8Endpoint in RESTComponent by @kozlovsky in #7046
  • ProcessChecker refactoring by @drew2a in #6941
  • Shut down the Tribler Core process if the GUI process crashes by @kozlovsky in #6996
  • Stop Core on components startup exception by @kozlovsky in #7021
  • Show the last error code and error name on timeout in EventRequestManager by @kozlovsky in #7020
  • Hide token balance value by @kozlovsky in #7049
  • Fix failing GUI test on Linux Github action by @xoriole in #6982
  • Handle TypeError on tdef to metadata conversion by @xoriole in #6991
  • Add Null check for entry.tag_processor_version by @drew2a in #7009
  • Add format_error_message function to CoreManager by @drew2a in #6881
  • Protect cache_exitnodes_to_disk from raising OSErrors by @drew2a in #7039
  • Fix UnicodeDecodeError by @drew2a in #7040
  • Add SSLError to exceptions by @drew2a in #7043

New in Tribler 7.12.1 RC 1 (Aug 22, 2022)

  • This release fixes several start-up issues when Tribler GUI freezes during the load screen or shows a "cannot connect to the Tribler Core" error and several shutdown issues when the Tribler Core process does not finish after the Tribler GUI process crash. Some other bugs are fixed as well.
  • Bugfixes:
  • Fix CoreConnectionError by @kozlovsky in #7001
  • Handle exceptions in UpgradeManager by @kozlovsky in #7007
  • EventManager's timeout should ignore the upgrade duration by @kozlovsky in #7006
  • Proper shut down of the Tribler Core process if the GUI process crashes by @kozlovsky in #6995
  • ProcessChecker refactoring by @drew2a in #6941 (cherry-picked in #6997)
  • Fix failing GUI test on Linux Github action by @xoriole in #6982
  • Handle TypeError on tdef to metadata conversion by @xoriole in #6991
  • Add Null check for entry.tag_processor_version by @drew2a in #7009

New in Tribler 7.12.0 (Aug 22, 2022)

  • 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 since the 7.11 release:
  • Fix #6968 Tribler freezes and requires "Force shutdown" on exit by @kozlovsky in #6969
  • Libtorrent session state gets lost when upgrading to a new Tribler version, fixed in #6978 by @kozlovsky
  • Fix Tribler crash when pressing Ctrl+O (Cmd+O on OSX) to add a torrent from a file, fixed in #6980 by @kozlovsky
  • Fixes #6929 by @drew2a in #6937: Can't open the torrent file from the browser by clicking on it
  • Fix #6961 Error when removing entries from the FeedbackDialog by @kozlovsky in #6962
  • Fix the Tribler crash after the closing of FeedbackDialog by @kozlovsky in #6960
  • Fix the upgrader logic if the tags db file was not created yet by @kozlovsky in #6956
  • If a user decides to send a Tribler crash report, Tribler confirms that the report has been sent, but actually, it does not send anything, fixed in #6974 by @kozlovsky
  • 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 by select.limit in BandwidthDatabase.get_latest_transaction by @drew2a in #6821
  • Add NPE check to handle_uri by @drew2a in #6829
  • Add is_dir() check to add_directory_dialog by @drew2a in #6835
  • Add UnicodeEncodeError to the except block by @drew2a in #6836
  • Fix download progress bar 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 the 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 the 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:
  • Add a possibility to manually trigger GUI and Core exceptions in Tribler for debugging purposes by @kozlovsky in #6959
  • 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 in Tribler 7.11.0 (Mar 8, 2022)

  • Added permissionless Tags crowdsourcing system. Tribler users can now add tags to torrents. The tags will be shared with other users anonymously.
  • Tree-based file selection in the download details and "Start download" dialog
  • Channel previews are faster and more reliable
  • Asynchronous Core components startup should speed up boot on machines with slower drives
  • As usual, lots of bugfixes

New in Tribler 7.10.0 (Jul 7, 2021)

  • Add version community mixin
  • Remove DNS lookup when contacting UDP trackers through a proxy
  • Ensure TorrentChecker.check_random_tracker makes requests using the default hop count
  • Update Socks5ClientUDPConnection.sendto to support hostnames
  • Fix typos in Socks5Client tests
  • Fix tunnel_helper --restapi option
  • Fix adding torrent to personal channel after creating torrent
  • Fix mismatched channel disconnects
  • Remove redundant timeout check in versioncheck manager
  • Uncover the real exception from CoreConnectTimeoutError
  • Add user-agent header to version check request (#6143)
  • Remove focus rectangle on channels path breadcrumb
  • Fix incorrect translation crashing Settings page
  • Fix incorrect (un)quote of torrents' file-URIs
  • Add autogenerated swagger.yaml to .gitignore
  • Remove v7.4 checkpoints that can't be converted
  • Update IPv8 pointer
  • Don't re-join a hidden swarm after having downloaded the metainfo
  • Fix some formatting issues in TriblerTunnelCommunity
  • Removed unnecessary code
  • Don't log HTTPNotFound exceptions
  • Allow request to the downloads endpoint even if MetadataStore is disabled
  • Fixes #6076: Object BandwidthTransaction was deleted outside of current transaction
  • Fixes #6115: Move an async function call out of the db_session scope (#6134)
  • Change GigaChannel community id
  • Disable old reporter
  • Refactor test_get_first_free_port
  • Fix dirty flag dropped when going back through channels stack
  • Fix thumbnails remaining on jumping to root channel view
  • Fix collection always in preview state
  • Update zh_CN translation
  • Update ru_RU translation and add dialog strings
  • Fix loading animation not hiding on going back in channels stack
  • Fix channel navigation not showing during preview loading
  • Change spacer height
  • Move add channel button under channels list
  • Change QSS styling for main window
  • Rearrange left menu
  • Fix Pylint issues
  • Add seeder
  • Fix seeding ratio
  • Refactor store
  • Update pt_BR localization
  • Fix missing % in translated string

New in Tribler 7.9.0 (May 7, 2021)

  • Skip version cleanup on deployment test
  • Disable health column on Popular page
  • Add explanation for Popular page
  • Make torrent health messages processing threaded
  • Fix popularity endpoint to limit selection by the last 24hrs
  • Update IPv8 pointer
  • Add e2e circuit speedtest experiment
  • Add exit circuit speedtest experiment
  • Add hidden peer discovery experiment
  • Add support for removing old state directories on upgrade (#6017)
  • Fixed bug with LedgerZero timestamps
  • Add EVA protocol
  • Hide torrent count when no count info available
  • Enriched log entry with peer info
  • Extend try-except block to whole function
  • Fix incorrectly updating channel progress from downloads
  • Replace "main" by "latest" for readthedocs.io links
  • Docstrings added
  • Remove explicit inheritance from the object class
  • Combine multiple tests into a signle one for simplicity
  • Use pure-python is_bencoded function instead of libtorrent.bencode in TriblerTunnelCommunity Handle settings passed as dict
  • Make libtorrent import optional
  • Replace "devel" by "main"
  • Add additional tags
  • Make some imports in Session optional
  • Optionally attach the tribler-debug-ui webapp to the RootEndpoint
  • Replace logfunc() by self.logger.info()
  • Update IPv8 pointer
  • Remove legacy GigaChannelCommunity compatibility
  • Extend boot logging
  • Update port reference
  • Extend network utils
  • Change default API port to 52194
  • Set Organisation for QSettings
  • Fix race condition in channels load
  • Add popular torrents tab
  • Fix is_tribler_process function
  • docs: fix simple typo, servicecs -> services
  • Remove hard-coded peer limits from DebugWindow
  • Remove max_peers from DiscoveryBooster
  • Use new IPv8 bootstrapping

New in Tribler 7.8.0 (Apr 11, 2021)

  • Showed token balance again
  • Updated bw accounting/tunnel community IDs
  • Wiped existing records in bandwidth database
  • Checked for duplicate BalanceRequestCaches
  • Fixed debug pane keyboard shortcut
  • Specified timeout for the DiscoveryBooster
  • Fixed profiler button issue in Debug Pane
  • Added yappi as pip dependency
  • Fixed yappi profiler in the core
  • Fixed broken resource_manager tests
  • Fixed a bug on writing CPU data to file
  • Fixed low disk notifier bug
  • Removed old resource monitor file
  • Added core and GUI CPU graph
  • Added GUI memory plot in Debug Pane
  • Added a separate GUI resource history
  • Updated session to use core resource monitor
  • Set GUI resource check interval
  • Added GUI resource monitor
  • Scrubbed values in Feedback Dialog
  • Renamed _stacktrace_long by _stacktrace_extra
  • Extracted sentry events
  • Stopped crash an application when GUI raise an exception
  • Fixed memory leak in Downloads page
  • Updated info about release cycle
  • An attempt to fix #5934 by avoiding storing all frames with locals inside a signal handler
  • Fixed typo bug on sys exit
  • Ignored all the information in a version, after '-'
  • Added Pillow as a hidden dependency
  • Replaced "comments" with "what were you doing before" question.
  • Ignored patch version in upgrade scenarios
  • Improved Sentry Scrubber
  • Checked on 'escape_pressed' attribute
  • Checked that a row number in the correct range
  • Changed some expressions to f-strings format
  • Updated IPv8 pointer
  • Applied pyupgrade to the whole codebase

New in Tribler 7.7.1 (Jan 12, 2021)

  • Added check on infohash key existing
  • Recovered from corrupt tribler config
  • Stopped processing on_query_results while qt_object_destroyed
  • Added on_destroyed handler for dialogs
  • Changed on_files_included/excluded signature
  • Fixed metainfor issue by changing on_reload_torrent_info signature

New in Tribler 7.7.0 (Jan 6, 2021)

  • Fixed pyqtsignal handling on low storage
  • Added ability to send issues automatically in case TEST_SENTRY_URL is defined
  • Renamed error_reporting_requires_user_consent
  • Changed mousePressEvent signature
  • Returned from on_received_metainfo if the dialog closed
  • Updated download progress in channels on dl polls
  • Fixed default search order for FTS queries
  • Changed mocked config to corrupted source file
  • Fixed crash on perform_files_request when dialog is closed
  • Added "closed" property to DialogContainer
  • Added xinerama as debian depenedency
  • Fixed full-text search query
  • Fixed sorting search result by health (#5880)
  • Added sql_default value to self_checked column
  • Removed db_session from column_exists upgrader utility
  • Fixed style issues
  • Added v10 test database and update upgrader tests
  • Converted torrent_checked set to dict
  • Added torrent checker tests
  • Removed redundant return
  • Added db v8->v10 upgrader test
  • Made torrent_checked a property
  • Fixed database upgrade issues
  • Fixed torrent checker tests
  • Load torrents_checked from db to bootstrap
  • Added self_checked column to TorrentState
  • Fixed Search breadcrumb error
  • Fixed remote preview for channels
  • Added an option to run Tribler with sentry URL for tests
  • Applied error_reporting_requires_user_consent in case of core 's errors
  • Added prefix TEST to consts
  • Added Discovery Booster
  • Added an option to automatically send exceptions
  • Increased the size of nodes in trust graph slightly
  • Updated trustview endpoint tests
  • Fixed issue with clicking node in Trust graph UI
  • Added test for refresh query parameter in trustview endpoint
  • Improved logging and exception message in Trust graph
  • Added missing refresh parameter in trustview endpoint.
  • Fixed Trustgraph max node issue
  • Fixed preview_clicked pyqtsignal handler issue
  • Fixed database upgrader & tests
  • Fixed GUI emit interface mismatches
  • Returned false if PyQt5 is not available on user confirmation
  • Converted PyQt5 to local import in tribler common.
  • Renamed variable last_fresh_time
  • Fixed pylint issue
  • Added popular torrents checking in torrent checker
  • Fixed bug in relay payouts
  • Updated IPv8 pointer
  • Added release for Sentry
  • Used mds instead of metadata_store
  • Rollback "Tribler starts on event mechanism"
  • Added try-except block to dependency message box
  • Added value check
  • Added to makedirs the argument exist_ok=True
  • Removed unused sync_channels strategy
  • Kept python modules in a report
  • Added breadcrumbs to UI
  • Added user identification for GUI errors
  • Stopped spamming breadcrumbs after error
  • Adopted signal C++ signatures
  • Wrapped connect() calls for extended tracebacks
  • Fixed broken pre-commit on Mac

New in Tribler 7.6.1 (Dec 14, 2020)

  • Fixed broken pre-commit on Mac
  • Migrated add_url_params over from IPv8
  • Fixed move file callback function

New in Tribler 7.6.0 (Dec 14, 2020)

  • Refactored Channels GUI
  • Fixed slow channel processing - channels processing speed increased 10x-100x times
  • Added Sentry crash report processing
  • Removed TrustChain in favour of our new LedgerZero traffic accounting system
  • Increased Tunnels performance due to refactored IPv8 serializer
  • Completely removed VLC and its dependencies
  • Many smaller bug fixes and performance improvements

New in Tribler 7.5.4 (Oct 30, 2020)

  • Changelog:
  • Fixed remote query community crash on wrong query
  • Added unit tests for processing received RQC queries
  • Fixed test_as_server random dir with fixed seed
  • Fixed CancelledError
  • Update IPv8 pointer
  • Removed file with unicode character causing issues in Jenkins CI/CD pipeline
  • Fixed GUI crashing on race condition in addtochannel dialog
  • Fixed unbound local error in version checker
  • Fixed multiple version checker popups
  • Covered timeout with tests in version checker
  • Added tests for multiple version checker popups
  • Isolated RemoteQueryCommunity
  • Set libtorrent max rate limit

New in Tribler 7.5.2 (Sep 24, 2020)

  • Important changes:
  • Updated Python interpreter to Python 3.8
  • Disabled embedded VLC video player due to compatibility problems
  • Updated Libtorrent version to 1.2.4 in Windows builds and fixed compatibility with Libtorrent 1.2.4+ in Unix versions
  • Stopped fetching empty Channels from remote peers
  • Full changelog:
  • Disable video play buttons
  • Add Mock in versionchecker tests
  • Add timeout in async version check
  • Update version check interval to six hours
  • Add release url in the version check manager
  • Fix RemoteQuery not using model properties
  • Remove fault handler from pip3 requirements.txt
  • Update run instruction in README file
  • Fix Pony unique transaction error
  • Using SelectorEventLoop in the Windows tests
  • Fix mdblob squash test failing randomly
  • Not starting libtorrent session in download tests
  • Ported GUI tests to pytest
  • Fix add to channel error
  • Broke testnet settings into multiple ones
  • Totally ignore gaierrors
  • Fixed GUI test event loop policy
  • Ignoring gaierror with errno -5
  • Switched Win64 GUI test to SelectorEventLoop
  • Updated IPv8 pointer
  • Simplified Windows dev documentation
  • Using SelectorEventLoop by default
  • Removed too informative logging statements
  • Added Windows batch script to start Tribler
  • Removed cp65001 code
  • Fixed SHOW_CONSOLE variable
  • Removed built-in libraries from dependency checker
  • Fixed dependency checker when starting Tribler
  • Updated Windows development env docs
  • Disable VLC loading
  • Let unhandled_error_observer deal with gaierrors
  • Check for new version immediately after starting
  • Merge pull request #5487 from qstokkink/add_lt1.1.13_support
  • Added libtorrent 1.1.13 support for listen_succeeded_alert
  • Make GUI send last traceback on core timeout error
  • Shutdown ResourceMonitor during unit tests
  • Skip profiler test if Yappi is not installed
  • Fix libtorrent 1.2.4+ compatibility
  • Add default download path to recently used dirs cache
  • Fix a minor comma issue in Debian control file
  • Add build parameters on snap build script
  • Made VLC a recommended dependency
  • Fixed BUILD_TRIBLER_SNAP variable check
  • Removed ffmpeg
  • Updated Linux requirements
  • Updated Debian building documentation
  • Added more info to OverflowError
  • Updated IPv8 pointer
  • Removed unicode string prefix from TriblerTunnelCommunity
  • Remove introduction point circuits from slots
  • Update IPv8 pointer
  • Fix gossiping zero-sized channels
  • Merge pull request #5448 from devos50/shutdown_bootstrap
  • Shutting down Bootstrap before IPv8
  • Fix wrong table update
  • Ask user for channel name on creation
  • Workaround for channels table racecon
  • Fix channels table uid remapping on removal
  • Fix error on adding magnet to collection
  • Fix wrong index in tablecontentmodel
  • Fix double model reset
  • Fixed loading VLC libraries on Windows
  • Update snap base to core20 from core18
  • Added fix for tribler.spec with latest setuptools
  • Merge pull request #5423 from egbertbouman/various_fixes
  • Fix TorrentDef.get_files_with_length
  • Make debug panel work with latest IPv8
  • Speedup tunnel tests + remove tests that check for tunnels not working
  • Show task name when event loop is dirty
  • Fix RESTManager shutdown
  • Fix UDPTracker and fix test_check_torrent_health
  • Fix loops and extra lines in trust balance graph
  • Period tracker check changes
  • Updated IPv8 pointer
  • Delaying video player initialization
  • Removed Twisted tutorial
  • Removed Python 2.7 pyinstaller support
  • Fixed test_error_observer_ignored_error
  • Fixed peer count limit for RemoteQueryCommunity in debug panel
  • Pathlib fix for profiler endpoint
  • Handle CancelledError in download_channel
  • Don't wait for the DHT while doing tunnel tests
  • Fix TorrentDef.get_name_as_unicode

New in Tribler 7.5.1 (Jun 25, 2020)

  • Fixed a bug where Tribler would crash or not startup when logging non-UTF8 characters.

New in Tribler 7.5.0 (Jun 25, 2020)

  • Core:
  • The Tribler Core is now powered by the modern Asyncio framework which improves performance, reliability and compatibility.
  • REST endpoints are now based on AIOHttp framework.
  • The video player is completely rewritten, improving its performance.
  • Tribler channels now support multiple channels per user with file-tree like nested structure.
  • DHT requests are now anonymous by default.
  • Improved the startup time of the core.
  • Discovering the first Tribler channels on new installations is now much faster.
  • The integrated market is disabled by default and can be enabled from the setting panel.
  • The experimental 'Credit mining' feature is removed completely.
  • User Interface:
  • The home screen is removed; instead, Tribler now first shows the discovered channels.
  • The torrent metainfo is loaded directly from DHT/tracker when unchecking the "anonymous" checkbox.
  • The CPU-hungry animation of "loading" channel state is replaced with a static icon.
  • You can now refresh the current page by clicking the selected button in the left menu again.
  • Numerous small Channels GUI improvements.

New in Tribler 7.4.4 (Feb 23, 2020)

  • Hacky fix for config upgrading
  • Backport TorrentChecker fixes from devel
  • Removed set_filepieceranges
  • Catch ValueErrors in connect_to_tracker (to deal with invalid urls)
  • Fix for checkpoint timeouts
  • Fix dir writability check

New in Tribler 7.4.3 (Feb 16, 2020)

  • Update IPv8 pointer
  • Fix issue in monitor_downloads
  • Fix checkpoints getting stuck + speedup shutdown
  • Handle ConnectionLost error in version checker
  • Fix race condition in GUI videoplayer
  • Catch socket errors
  • Pass ignore_errors to recursive calls in recursive_unicode
  • LooseVersion-based checks in VersionManager
  • Fix encoding of encoding attribute in TorrentDef
  • Add stricter check for tracker URLs
  • Handle HttpError exception in endpoint
  • Handle UnicodeDecode error by CategoryFilter
  • Handle KeyError exception in resume_download

New in Tribler 7.4.2 (Feb 14, 2020)

  • Update IPv8 pointer
  • Fix issue in monitor_downloads
  • Fix checkpoints getting stuck + speedup shutdown
  • Handle ConnectionLost error in version checker
  • Fix race condition in GUI videoplayer
  • Catch socket errors
  • Pass ignore_errors to recursive calls in recursive_unicode
  • LooseVersion-based checks in VersionManager
  • Fix encoding of encoding attribute in TorrentDef
  • Add stricter check for tracker URLs
  • Handle HttpError exception in endpoint
  • Handle UnicodeDecode error by CategoryFilter
  • Handle KeyError exception in resume_download

New in Tribler 7.4.1 (Feb 6, 2020)

  • Fix getting non-sanitized tracker URLs

New in Tribler 7.4.0 (Feb 5, 2020)

  • Included a version system for easy rollbacks
  • Fixed create torrent with no personal channel
  • Fixed dl not starting with add to channel checkbox
  • Fixed encoding of encoding entry in torrent files
  • Stopped gossiping empty personal channels
  • Fixed extended peer info encoding
  • Used LooseVersion to compare networkx version
  • Added TrustGraph compatibility to networkx 2.4
  • Fixed for getting libtorrent settings
  • Fixed VideoServer for multifile torrents
  • Fixed misleading VOD message
  • Fixed escaped unicode in download dialog
  • Fixed inital load unicode torrent issue
  • Fixed crash if there is no socks connection
  • Moved seeding ratio settings to global config
  • Python3 libtorrent bdecode compat utility
  • Skipped weird scrape results in torrent checker
  • Do not re-download already downloaded torrent
  • Fixed unicode error in create_torrent_endpoint
  • Removed bootstrap nodes persistence in file
  • Stripped search query for auto completion response
  • Stripped search query before converting to fts query
  • Result validation before trying to plot trustgraph
  • Added socket error on get address info to unhandled session error
  • Bootstrap peers DHT connect failure log set to debug instead of error
  • Skipped repeating error messages in resource_monitor
  • Removed error-prone log statement in resume_download
  • Decoded torrent filenames with UTF8 by default
  • Fixed unicode error on adding torrent to channel
  • Checked Unicode decode error in socks conversion
  • Fixed config convert for 7.4
  • Fixed issue with exporting torrent - Python3
  • Added versioned path to state directory
  • Fixed tstate corruption during conversion
  • Added pyqtgraph as pip dependency

New in Tribler 7.3.2 (Oct 18, 2019)

  • [Hotfix] Fixed service cache not checking for verified peers

New in Tribler 7.3.1 (Oct 18, 2019)

  • Fixed race condition in the GUI
  • Fixed VLC reset issue
  • Fixed saving seeding ratio
  • Fixed crash while downloading metainfo
  • Fixed crash because of incomplete bootstrap file download
  • Fixed crash while fetching bootstrap peers
  • Added a level 2 category filter
  • Fixed build for the latest macOS Mojave
  • Fixed token balance issue
  • Fixed issue with multiple bootstrap file
  • Updated IPv8
  • Fixed issue with disabling mining button depending on the settings
  • Add verification of channel dir structure before download
  • Credit mining disabled by default for 7.3.1
  • Gossip personal channel separately
  • Fixed already called error on removing torrent

New in Tribler 7.3.0 (Oct 18, 2019)

  • Added scalable Giga Channels
  • Redesigned the channels in the GUI
  • Partial migration of codebase to Python3
  • Various Debug pane enhancements: added tunnel/DHT info, statistics
  • Various fixes and improvements in the market, DHT and other communities
  • Updated VLC 3.0.6 bindings
  • Enabled PEX for anonymous sessions, increase min/max_circuits
  • Pony, lz4 and wheel added in Debian build as pip dependency
  • Added BEP33 DHT health check
  • Fixed multiple instances of Tribler
  • Added support for building snap package
  • Various GUI fixes
  • Add Trust Graph
  • Updated REST documentation
  • Added market as a separate module: AnyDex
  • Various Unicode fixes
  • Integrated FakeTriblerAPI module within Tribler to ease integration tests
  • Improved GUI performance on search and sort
  • Added bootstrap mechanism for trust generation
  • Fixed several performance issues

New in Tribler 7.2.2 (Feb 10, 2019)

  • Fixed synchronized wrapper issue in MarketCommunity

New in Tribler 7.2.1 (Feb 4, 2019)

  • Added PeriodicSimilarity strategy in DiscoveryCommunity

New in Tribler 7.2.0 (Feb 1, 2019)

  • Improved the logic for credit mining by deploying a multi-level investment policy.
  • Added an option to sort torrent files in the user interface.
  • Added the ability to record historical transactions in the market.
  • Added logging of the state directory that Tribler is using.
  • Addressed various security issues in the decentralized market implementation.
  • Removed the pymdht module and use our own DHT implementation instead.
  • Fixed an issue where Tribler attempts to send bytes over an already closed circuit.
  • Fixed an issue that prevents circuits from being recreated.
  • Fixed various issues and crashes in the decentralized market.
  • Fixed various issues related to VLC bundling on macOS.
  • Fixed a crash when changing the anonymity of a specific download.
  • Fixed a crash when starting a download.
  • Fixed a crash when subscribing to a channel.
  • Fixed a crash when an invalid bloomfilter is being transmitted to others.
  • Fixed an error during the database shutdown when closing Tribler.
  • Fixed a crash when libtorrent sessions are not available.
  • Slightly changed the presentation of the token balance in the user interface.
  • Fixed a crash during video-on-demand playback.
  • Fixed a crash when receiving a libtorrent alert.
  • Fixed an issue when excluding specific files during a download.
  • Fixed multiple issues when creating a new order in the decentralized market.
  • Fixed a crash with the key/value database.
  • Fixed a crash when parsing a malformed remote search query.

New in Tribler 7.1.5 (Jan 15, 2019)

  • Fixed issue with adding Torrent

New in Tribler 7.1.4 (Jan 15, 2019)

  • Added additional timeout check. This should prevent orders with an invalid timeout from being inserted in the local order book.

New in Tribler 7.1.3 (Nov 29, 2018)

  • Fixed homepage items running off screen

New in Tribler 7.1.0 (Oct 10, 2018)

  • Improved the performance, scalability, and stability of our integrated blockchain (TrustChain)
  • Improved relevance ranking algorithm by actively gossiping torrent health with others
  • Implemented payout of bandwidth tokens for direct downloading
  • Released a separate Testnet overlay which can be toggled from the configuration file
  • Added multi-select functionality to search results and downloads
  • Removed VLC as a separate Windows installation (it is bundled with Tribler now)
  • Improved the performance of our decentralized market
  • Improved the peer discovery mechanism
  • Fixed memory leaks, causing memory usage to increase infinitely
  • Fixed numerous bugs regarding character encoding/decoding
  • Prevented libtorrent from checking a torrent again when changing hop count

New in Tribler 7.1.0 RC 1 (Sep 7, 2018)

  • Replaced Electrum wallet with bitcoinlib
  • Statistics of IPv8 overlays are now displayed in the debug panel
  • Fixed bug when sorting orders in the market
  • Moved TrustChain REST API to IPv8
  • Fixed crash when inserting torrents with non-standard names in the database
  • Fixed bug when clicking on torrents in the list of search results
  • Updated logger configuration
  • Fixed crash when sending UDP data
  • Prevented libtorrent from checking a torrent again when changing hop count

New in Tribler 7.1.0 Beta (Aug 20, 2018)

  • Implemented payouts for direct downloading
  • Fixed a bug when gossiping popular torrents
  • Added support for cp65001 on Windows
  • Fixed a crash due to a socket error
  • Fixed various issues with unicode characters
  • Improved performance of the matchmaking engine in the market
  • Fixed various security issues in the market
  • Added a testnet flag to the Tribler configuration
  • Fixed bug when upgrading the database that stores market information
  • Added multi-select functionality to search results
  • Integrated a custom DHT for peer lookup
  • Fixed error when downloading metadata using SSL
  • Updated libtorrent version on MacOS build
  • Fixed a bug when exporting torrent files
  • Fixed a bug in the version checker where the dialog did not show

New in Tribler 7.1 Preview 3 (Jul 2, 2018)

  • improved relevance ranking algorithm by actively gossiping torrent health with others
  • added type and timestamp fields to blocks in our TrustChain ledger
  • added support for VLC 3.0.2 on Windows, Mac and Linux
  • fixed a crash caused by the family filter
  • fixed a crash in the debug panel
  • improved the test suite
  • improved performance of circuit dispatching during anonymous downloads
  • fixed a crash in the upgrade process
  • fixed two crashes caused by the torrent checker
  • fixed various memory leaks
  • fixed a crash when deciding relevance of torrents and channels
  • fixed a crash adding a torrent to a channel
  • fixed an error when paying out bandwidth tokens
  • fixed a crash when adding a torrent with a non-UTF8 name
  • fixed a crash when running Tribler on NixOS
  • changed the presentation of the token balance

New in Tribler 7.1 Preview 2 (May 19, 2018)

  • Fixed issue with closing Torrent checker
  • Fixed memory leak in GUI
  • Fixed issue with restating Tribler
  • Improved startup time
  • Fixed runtime error with duplicate downloads
  • Various fixes on Market Community
  • Enabled fault handler
  • Added disk usage to credit mining
  • Fixed seeding time/ratio
  • Fixed bug when sending error report in GUI
  • Fixed file progress for multi file downloads
  • Improved GUI tests
  • Fixed Tribler request manager
  • Removed VLC as separate windows installer
  • Fixed issue with tray icon
  • Fixed few unicode issues
  • Fixed bug when changing downloads & exploring files in GUI

New in Tribler 7.0.2 (Mar 17, 2018)

  • Added Tribler request dispatcher with multiple priority request pools
  • Fixed issues with Qt Http threads
  • Fixed SSL support with treq on Windows
  • Added proper resource cleanup on restarting Tribler
  • Fixed error message on request manager
  • Refactored Process Checker
  • Checked for the existence of an index in lazy loading the list widget
  • Added check for Tribler settings if it is available before starting download
  • Fixed issue with log directory selection
  • Fixed issues with None json results in downloads
  • Torrents with invalid info hash are ignored
  • Fixed few unicode issues

New in Tribler 7.0.1 (Feb 10, 2018)

  • fixed a GUI crash when torrent health information comes in
  • fixed a crash when building anonymous tunnels
  • fixed a GUI crash when receiving search results
  • fixed a GUI crash when clicking on home page items that are not fully loaded yet
  • fixed a crash when receiving torrent metainfo from the DHT
  • added a disk space monitor and implemented a warning when the amount of free disk space is low
  • fixed a crash when removing RSS feeds from your channel
  • fixed a crash when entering invalid numbers for the maximum download/upload rates
  • fixed an issue in the GUI where the magnet link was not correctly decoded for homepage items
  • fixed a crash when loading recent picked locations for downloads
  • fixed a crash when a torrent with an invalid infohash is added

New in Tribler 7.0.0 (Feb 2, 2018)

  • Tribler 7 is one of our biggest releases so far and has been in development for almost two years. Since the latest release, we made a total of 2,055 commits and changed 1,070 files (with 80,073 additions and 99,227 deletions). We closed over 400 issues on our Github repository, fixed hundreds of bugs and made major improvements to the user interface and torrent downloading mechanism. We added a blockchain fabric to Tribler to accurately keep track of bandwidth contributions on a dedicated page in the user interface. This innovation allows us to build new features to make Tribler more stable, faster and secure to use.
  • Changelog:
  • Redesigned the user interface and dropped wxPython in favor of PyQt.
  • Made a clean separation between the user interface and the Tribler core. This significantly improves speed and stability.
  • Deployed a blockchain fabric within Tribler to keep track of bandwidth contributions.
  • Added new RESTful API for developers.
  • Created a twistd plugin, allowing users to run Tribler without a user interface.
  • Refactored our test suite significantly. Unit tests execute faster now and are more reliable.
  • Improved the build process of the Tribler executable on Windows and macOS.
  • Updated dependencies of Tribler to the latest versions.
  • Fixed compatibility with latest versions of libtorrent.
  • Improved integration of the Twisted framework with the Tribler codebase.
  • Executables on Windows are now signed.
  • Fixed many race conditions due to context switches between various threads.
  • Improved error reporting functionality when Tribler crashes.
  • Improved the debug panel and expanded it with additional information.
  • Fixed various memory leaks when running Tribler for several hours or days.
  • Improved Unicode support.
  • Fixed various bugs when receiving malformed packets from other peers.

New in Tribler 7.1 Preview (Jan 25, 2018)

  • A preview version of our upcoming feature: token mining. Token mining is an automated process where you can earn bandwidth tokens by uploading content to others. To start mining, go to one of your discovered channels and click the mining button. Tribler will attempt to optimize the number of uploaded data while protecting your anonymity.

New in Tribler 6.6.0 Pre 1 (Jan 13, 2017)

  • First multichain community experimental release

New in Tribler 6.5.2 (May 13, 2016)

  • Update release info to 6.5.2.

New in Tribler 6.5.1 (Mar 15, 2016)

  • Bug fix release:
  • Catch and log InvalidTags when decrypting relay messages
  • Lower "cannot exit data" log entry level

New in Tribler 6.5.0 RC 6 (Oct 27, 2015)

  • Improve the exit node checkbox description

New in Tribler 6.5.0 RC 5 (Sep 7, 2015)

  • Merge pull request #1644 from LipuFei/fix_windows_path
  • Fix windows path issue

New in Tribler 6.5.0 RC 4 (Aug 27, 2015)

  • Pack msvcr10 for libsodium.

New in Tribler 6.5.0 RC 3 (Aug 19, 2015)

  • Some fixes.

New in Tribler 6.5.0 RC 2 (Aug 4, 2015)

  • Change Tracker Checking interval mechanism

New in Tribler 6.4.3 (Jan 29, 2015)

  • Merge pull request #1170 from LipuFei/fix_dialogs_next
  • Fix dialogs for next

New in Tribler 6.4.2 (Jan 20, 2015)

  • Add a checkbox for anonymity slider and use correct descriptions for anonymity levels
  • Add default anonymous level in settings
  • Add default anonymous level slidebar to SettingsDialog
  • Add packaging instructions for Debian,OSX,Windows
  • Add python version runtime check.
  • Add python-pil dependency
  • Check if we are running an old tribler with a new db version
  • Dont use hostname as nick
  • Ensure we don't try to remove the same relay twice
  • Fix FamilyFilter log exception
  • Fix FamilyFilter tracker encoding problem
  • Fix SettingsDialog restart segfault problem
  • Fix SettingsDialog restart segfault problem
  • Fix SetttingsDialog
  • Fix TFTP issues during shutdown
  • Fix TunnelOptin dialog buttons
  • Fix adding magnet link download
  • Fix anon dialog
  • Fix anonymous_slidebar in SaveAs dialog
  • Fix binary data being put in a couple assertion messages.
  • Fix hidden_service unit test
  • Fix mac crash on startup
  • Fix nickname problem
  • Fix nickname problem
  • Fix proxy settings for normal downloads
  • Fix pymdht
  • Fix socket reading loop.
  • Fix some log entries formatting.
  • Fix the anontunnel opt-in dialog.
  • Fix the problem that ListItem is not registered
  • Fix typo in home tab.
  • Fix windows installer signing
  • Reset the nickname to "Tribler user" if the nickname contains the hostname.
  • Show a meaningful message before doing a slow task during upgrade
  • Update README
  • Update default download config
  • Use default anonymous level for new downloads
  • Use shutil.move instead of os.rename in several places to allow to move files across filesystems.

New in Tribler 6.4.1 (Dec 29, 2014)

  • Fix Tribler crashes when starting Tribler just after stopping it.
  • Fix: allow removing torrents from own channel (Thanks Dan Arnould!)
  • Fixes for the tunnel community.
  • Make TunnelCommunity (P2P encrypted proxy downloads) loading configurable and disabled by default
  • Opt-in dialog for TunnelCommunity
  • Several fixes and cleanups for the cryptographic code.
  • Update .deb dependencies
  • Update windows packager for new curves.ec location
  • Updated tunneled download test description

New in Tribler 6.4.1 RC 1 (Dec 24, 2014)

  • Merge pull request #1064 from whirm/anontunnel_optin
  • Make TunnelCommunity loading configurable and disabled by default

New in Tribler 6.4.0 (Dec 18, 2014)

  • Merge pull request #1004 from egbertbouman/fix_could_be_dispersy
  • Fix for could_be_dispersy

New in Tribler 6.4.0 RC 2 (Dec 17, 2014)

  • Merge pull request #997 from whirm/dont_join
  • Don't join until we fix the timeout stuff on select()

New in Tribler 6.4.0 RC 1 (Dec 13, 2014)

  • Replace swift with TFTP for torrent collecting.

New in Tribler 6.3.5 (Nov 6, 2014)

  • Merge pull request #913 from LipuFei/fix_image
  • Raise exception when images are not right

New in Tribler 6.3.4 (Oct 29, 2014)

  • Merge pull request #906 from LipuFei/fixes
  • Fix a typo in init() Tribler/Utilities/Instance2Instance.py

New in Tribler 6.3.3 (Sep 11, 2014)

  • Checkpoint recovery fixes

New in Tribler 6.3.1 (Sep 2, 2014)

  • hot fix from 6.3.0 for database upgrade
  • a year of bug fixing, polishing and performance tweaking
  • dropped support for Mac models from 2008, due to Python support issues
  • towards anonymous streaming:
  • Tor-like anonymous tunnel building, based on UDP
  • Support for Cell,Create,Extend, and Ping Tor protocol messages
  • Diffie-Hellman session key exchange
  • Real-time crawler for bandwidth performance (inspired by metrics.torproject.org)
  • decentralised directory service for Tor-like routers
  • automatic anonymous 50MByte test download using new Tor-like protocol
  • no general anonymous downloads yet, trial-only
  • thumbnail navigation:
  • single-click streaming from main screen
  • channels can now optionally be browsed by thumbnails
  • Youtube-like GUI composed of user-generated images
  • Prepares the way for remote control navigation & operation
  • complete rewrite of the elastic database engine (the dispersy overlay):
  • use of Twisted frameworks instead of our custom event-handlers
  • less reliance on master bootstrap servers (new discovery community)
  • improvements in NAT puncturing efficiency
  • faster data synchronization between Tribler peers

New in Tribler 6.2.0 (Aug 1, 2013)

  • Video on demand is back! No more waiting for video downloads!
  • Less disk and CPU consumption
  • UI improvements
  • Fixes for the bugs found in 6.1 and reported by the community during the 6.2 RCs

New in Tribler 6.1.0 (Apr 19, 2013)

  • Faster downloads: We have switched from the old python based bittorrent core to Rasterbar's libtorrent, so expect less resource usage too, we are saturating a symmetric 100Mb/s connection without much trouble.
  • Less disk and CPU consumption used for community synchronization.
  • UI improvements (download speed graphs, some new icons, general UI cleanup...)
  • Throttling (Bandwidth limitation) is working again.
  • The LibSwift engine has been updated too.
  • The "Save as" dialog has been modified to improve usability when downloading from magnet links.
  • Thumbnails for downloaded media: Now when a new video file gets downloaded, Tribler will automatically create a thumbnail and make it available to the rest of peers to be shown on the search results for all the media you download from your favourite open channels.
  • Fixed freezing at startup on some machines.
  • Fixed race conditions and lockups in synchronizations.
  • Various bug fixes and minor improvements.
  • Fixes for the bugs reported by the community during beta1 and beta2

New in Tribler 6.0.2 (Oct 30, 2012)

  • FIXED: swift crashes
  • FIXED: contextmenu did not work in the downloads section on linux
  • FIXED: status bar layout/colour issues
  • FIXED: drag-and-drop to playlist did not work
  • FIXED: various other minor bugs
  • IMPROVED: default tab behaviour for torrent details improved

New in Tribler 6.0.1 (Oct 18, 2012)

  • IMPROVED: removed bundle options from settings (were not used anymore)
  • FIXED: stopping a download/seed would cause download statistics for that download session to be lost
  • FIXED: layout issues in the playlist manager
  • FIXED: items in the list could appear empty
  • IMPROVED: added a retry button for when loading a torrent fails
  • FIXED: settings dialog on OS X
  • FIXED: adjusting column labels not working on Ubuntu
  • FIXED: manually adding a torrent did not work
  • FIXED: issue that caused having to delete a torrent twice
  • FIXED: could not view comments, activities, moderations from my channel
  • FIXED: could mark your own channel as favorite
  • IMPROVED: added separate link for including/excluding files
  • Fixed show infohash on double click

New in Tribler 6.0.0 (Oct 15, 2012)

  • NEW: completely redesigned user interface.
  • IMPROVED: performance improvements for users that recently join a channel.
  • FIXED: database corruption
  • FIXED: many small issues were resolved.

New in Tribler 5.9.29 (Aug 28, 2012)

  • Fixed large torrent loading problem

New in Tribler 5.9.28 (Aug 23, 2012)

  • NEW: infinate scolling, tribler will now load more results whenever you reach the bottom of a list
  • NEW: double click on the torrentdetails tab to show the infohash of a torrent
  • IMPROVED: status updates are now a bit quicker, and the ui displays if it found some peers in the dht if all trackers are down
  • IMPROVED: we keep a small history of tracker responses. if a tracker did not respons in a previous try we will contact other trackers first, before trying it again.
  • FIXED: gui refresh updates could cause misalignment of the star icons
  • FIXED: gui refresh updates could removed items from the list
  • FIXED: gui priority optimalizations caused gui to refresh to often

New in Tribler 5.9.17 (Jun 27, 2012)

  • fixes communication between Tribler and Swift.
  • fixes related memory consumption issue.

New in Tribler 5.9.16 (Jun 27, 2012)

  • FIXED: concurrency bug caused Tribler to start consuming huge amounts of CPU and waste connections are X minutes into running
  • FIXED: memory leak causing Tribler to grow up to 2GB of memory within a day of running
  • FIXED: collected torrents actually grew larger than 50.000 limit

New in Tribler 5.5.24 (Mar 30, 2012)

  • FIXED: database upgrade script failed in some cases
  • FIXED: small visual changes to playlists, if descriptions were really long they grew to big
  • FIXED: if you select one file, only this file is downloaded (currently all files will be created on disk, but not downloaded)

New in Tribler 5.5.23 (Mar 30, 2012)

  • Small fix in regard to the webUI. Still only works on Ubuntu.

New in Tribler 5.5.24 (Mar 30, 2012)

  • FIXED: database upgrade script failed in some cases
  • FIXED: small visual changes to playlists, if descriptions were really long they grew to big
  • FIXED: if you select one file, only this file is downloaded (currently all files will be created on disk, but not downloaded)

New in Tribler 5.5.22 (Mar 30, 2012)

  • Database cleanup-script, limits the size of some of the tables
  • Will always show comments/activity tabs in channels if this channel is open/semi-open, promoting users to mark as favorite
  • Startup of Downloads is improved
  • Small changes to search, which could improve performance
  • FIXED: pause/resume in What's hot was broken
  • FIXED: create torrent dialog
  • EXPERIMENTAL: Implemented a WebUI compatible/very similar to uTorrent

New in Tribler 5.5.10 (Feb 8, 2012)

  • New: wiki-style channels. Everyone can edit swarmnames and see changes made in real-time, similar to wikipedia. Plus voting, commenting and a discussion area has been added in channels of torrents.

New in Tribler 5.2.1 (Dec 13, 2010)

  • Search box with suggestions
  • Anti-spam features
  • Video-on-demand support
  • Fully distributed

New in Tribler 5.1.0 (Jun 13, 2009)

  • Major reworking of the code, introducting a well-defined API to control the download engine, and a new database layer. Also includes SwarmPlayer and live streaming code.

New in Tribler 4.5.2 (Feb 26, 2009)

  • Fixes bug with livestreaming: both for authenticated and unauthenticated streams.
  • Fixes some issues with the video window not closing, or the video stalling when the download playing was stopped.

New in Tribler 4.1.9 (Jun 2, 2008)

  • Fixed problem with uTorrent Peer Exchange that caused Triblers talking to each other to close connections.