Transmission 4.0.0 arriba amb base a C++, BitTorrent v2 i més

transmissió

Transmission és un client P2P lleuger, gratuït i de codi obert per a la xarxa BitTorrent.

Després de gairebé tres anys de desenvolupament es va donar a conèixer el llançament de la nova versió de Transmission 4.0.0, versió en la qual es va dur a terme una important refactorització del codi base, cosa que va permetre reduir la mida del codi en un 18%, millorar la cobertura de les proves i simplificar el manteniment.

Per als que desconeixen de Transmission, han de saber que aquest és un client de BitTorrent relativament lleuger i poc exigent escrit en C i compatible amb una varietat dinterfícies dusuari: GTK, Qt, Mac nadiu, interfície web, daemon, CLI.

Principals novetats de Transmission 4.0.0

El canvi clau a la nova branca va ser la traducció del codi base de C (C90) a C++. Anteriorment, només la interfície basada en Qt s'escrivia a C++. La principal raó per traslladar tot el projecte a C++ és el desig d'aprofitar les funcions addicionals proporcionades a la biblioteca estàndard de C++ i la disponibilitat d'una verificació de tipus més avançada a C++. La interfície de GTK es va moure per utilitzar gtkmm, un contenidor de GTK per al llenguatge C++.

Per la part de les millores, es destaca que, es va afegir el suport per fer servir torrents en format BitTorrent v2 i torrents híbrids (per ara, només lús de torrents llestos per utilitzar, la capacitat de crear torrents basats en BitTorrent 2 apareixerà en un dels propers llançaments). A BitTorrent v2 s'ha desplaçat l'ús de l'algorisme SHA-1 a favor del SHA2-256, que s'utilitza tant per al control d'integritat de blocs de dades com per a entrades en índexs (info-diccionari), cosa que trenca la compatibilitat amb DHT i rastrejadors.

La interfície web s'ha reescrit utilitzant mètodes de desenvolupament de JavaScript més moderns i s'ha adaptat per utilitzar-lo en dispositius mòbils. El codi se salva de l'ús de la biblioteca jQuery, a més que la interfície web comprimida ara només ocupa 68 KB.

El rendiment va ser significativament millorat: provar el llançament del dimoni de transmissió amb 25 mil torrents va mostrar una disminució en la càrrega de la CPU en un 50% i una disminució en el consum de memòria en un 70% en comparació amb Transmission 3.00.

La interacció del procés en segon pla amb les interfícies GUI (transmission-qt i Transmission-web) es va canviar a RPC que s'executa en mode de taula, cosa que va reduir la mida de les dades transmeses i els requisits d'amplada de banda. Per comprimir les dades transmeses a través de RPC, es fa servir la biblioteca libdeflate més optimitzada en lloc de zlib.

Dels altres canvis que es destaquen:

  • L'usuari té l'oportunitat de configurar rastrejadors predeterminats que es poden fer servir per anunciar tots els torrents públics.
  • Les llavors acabades d'agregar es llancen immediatament, amb operacions de validació realitzades segons calgui (sense realitzar una verificació completa abans del llançament).
  • S'ha afegit una opció per excloure en crear nous torrents informació que es podria utilitzar per identificar indirectament un usuari (per exemple, data de creació i User-Agent).
  • S'ha afegit suport de llista negra per a IPv6.
  • El sistema de proves unitàries s'ha transferit per utilitzar Google Test.
  • Es va assegurar el llançament d'assemblatges basats en Clang al sistema d'integració contínua.
  • La llibreria base va ser fuzz testing.
  • S'ha implementat el procés de revisió de codi nou als analitzadors estàtics Sonarcloud, Coverity, LGTM i clang-tidy.

Finalment si estàs interessat en poder conèixer més a l'respecte, Pots consultar els detalls en el següent enllaç.

Com instal·lar Transmission a Linux?

Per a la els que siguin usuaris de Debian, Ubuntu, Linux Mint o qualsevol distribució derivada d'aquests, instal·len l'aplicació amb:

sue add-apt-repository ppa:transmissionbt/ppa -i suo apt install transmission

si són usuaris de Fedora o distribucions basades en aquesta, poden instal·lar l'aplicació amb el següent comanda:

sudo yum install transmission

Mentre que per als que són usuaris de Mandriva Linux han d'instal·lar amb aquesta comanda:

sudo urpmi transmission

Per al cas dels que són usuaris d'openSUSE, deuen teclejar el següent en la terminal:

sudo zypper install transmission

Finalment, per al cas dels que són usuaris de Arch Linux i distribucions derivades d'aquesta, poden instal·lar amb aquesta comanda:

sudo pacman -S transmission

De la mateixa manera es pot realitzar la compilació de Transmission en el sistema des seu codi font, només deuen seguir els següents passos per poder fer-ho.

El seu codi font es troba allotjat en GitHub pel que han de tenir el suport d'git perquè puguin clonar el repositori.

Anem a obrir una terminal i teclejar-hi el següent.

Primer anem a obtenir el codi font amb:

git clone https://github.com/transmission/transmission Transmission

Entrem a directori:

cd Transmission

I vam començar la compilació amb els següents comandaments que hem de teclejar un a un:

git submodule update --init mkdir build cd build cmake .. make sudo make install

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.