Появляется Transmission 4.0.0 на основе C++, BitTorrent v2 и других

коробка передач

Transmission — это бесплатный легкий P2P-клиент с открытым исходным кодом для сети BitTorrent.

После почти трех лет разработки объявили о выходе новой версии Transmission 4.0.0, версия, в которой был проведен существенный рефакторинг кодовой базы, позволивший уменьшить размер кода на 18%, улучшить тестовое покрытие и упростить сопровождение.

Для тех, кто плохо знаком с Transmission, вы должны знать, что это относительно легкий и нетребовательный BitTorrent-клиент, написанный на C и совместимый с различными пользовательскими интерфейсами: GTK, Qt, собственный Mac, веб-интерфейс, демон, CLI.



Основные новые возможности Transmission 4.0.0

El ключевым изменением в новой ветке стал перевод кодовой базы с C (C90) на C++.. Раньше на C++ писался только интерфейс на основе Qt. Главная причина портировать весь проект на C++ — это желание воспользоваться дополнительными функциями, предоставляемыми стандартной библиотекой C++ и наличие более продвинутой проверки типов в C++. Интерфейс GTK был перемещен для использования gtkmm, оболочки GTK для языка C++.



Что касается улучшений, то следует отметить, что добавлена ​​поддержка использования торрентов в формате BitTorrent v2 и гибридные торренты (пока только готовые торренты, возможность создавать торренты на базе BitTorrent 2 появится в одном из следующих релизов). В BitTorrent v2 использование алгоритма SHA-1 заменено на SHA2-256, который используется как для контроля целостности блоков данных, так и для записей в индексах (инфо-словарь), что нарушает совместимость с DHT и трассеры.

Веб-интерфейс был переписан с использованием более современных методов разработки JavaScript. и был адаптирован для использования на мобильных устройствах. Код сохранен из-за использования библиотеки jQuery, плюс сжатый веб-интерфейс теперь составляет всего 68 КБ.



El производительность была значительно улучшена— Тестирование запуска демона передачи с 25k торрентами показало снижение нагрузки на процессор на 50% и снижение потребления памяти на 70% по сравнению с Transmission 3.00.

Взаимодействие фонового процесса с интерфейсами GUI (transmission-qt и Transmission-web) было изменено на RPC, работающий в табличном режиме, что уменьшило размер передаваемых данных и уменьшило требования к пропускной способности. Для сжатия данных, передаваемых по RPC, вместо zlib используется более оптимизированная библиотека libdeflate.

Из других изменений, которые выделяются:



  • У пользователя есть возможность установить трекеры по умолчанию, которые можно использовать для рекламы всех публичных торрентов.
  • Новые добавленные семена выпускаются немедленно, а операции проверки выполняются по мере необходимости (без выполнения полной проверки перед запуском).
  • Добавлена ​​возможность исключать при создании новых торрентов информацию, которая может быть использована для косвенной идентификации пользователя (например, дату создания и User-Agent).
  • Добавлена ​​поддержка черного списка для IPv6.
  • Система модульного тестирования была перенесена для использования Google Test.
  • Обеспечил выпуск сборок на основе Clang в системе непрерывной интеграции.
  • Базовая библиотека прошла фазз-тестирование.
  • Новый процесс проверки кода реализован в статических анализаторах Sonarcloud, Coverity, LGTM и clang-tidy.

В конце концов если вам интересно узнать об этом больше, вы можете проверить подробности По следующей ссылке.



Как установить Transmission в Linux?

к Те, кто являются пользователями Debian, Ubuntu, Linux Mint или любого другого дистрибутива, созданного на их основе, устанавливают приложение с помощью:

sudo add-apt-repository ppa:transmissionbt/ppa -y sudo apt установить передачу

Если они Пользователи Fedora или дистрибутивы на ее основе, они могут установить приложение со следующими команда:

sudo yum установить передачу

А для тех, кто Пользователи Mandriva Linux должны установить эту команду:

передача sudo urpmi

Для тех, кто Пользователи openSUSE должны ввести в терминал следующее:

sudo zypper установить передачу

Наконец, в случае пользователей Arch Linux и производные от него дистрибутивы можно установить с помощью этой команды:

sudo pacman -S передача

Аналогичным образом вы можете скомпилировать Transmission в системе из исходного кода, вам просто нужно выполнить следующие шаги, чтобы сделать это.

Их исходный код размещен на GitHub, поэтому у них должна быть поддержка git, чтобы они могли клонировать репозиторий.

Мы собираемся открыть терминал и набрать в нем следующее.

Сначала мы собираемся получить исходный код с помощью:

git clone https://github.com/transmission/transmission Передача

Входим в каталог:

CD-передача

И мы начинаем компиляцию со следующих команд, которые мы должны вводить одну за другой:

обновление подмодуля git --init mkdir build cd build cmake .. make sudo make install




2023-02-08T21:03:21
приложений