Transmission 4.0.0 arriva basato su C++, BitTorrent v2 e altro ancora

Trasmissione

Transmission è un client P2P gratuito, open source e leggero per la rete BitTorrent.

Dopo quasi tre anni di sviluppo ha annunciato il rilascio della nuova versione di Transmission 4.0.0, versione in cui è stato effettuato un significativo refactoring della code base, che ha permesso di ridurre del 18% la dimensione del codice, migliorando la copertura dei test e semplificando la manutenzione.

Per chi è nuovo a Transmission, dovresti sapere che si tratta di un client BitTorrent relativamente leggero e poco impegnativo scritto in C e compatibile con una varietà di interfacce utente: GTK, Qt, Mac nativo, interfaccia web, demone, CLI.

Principali novità di Transmission 4.0.0

El il cambiamento chiave nel nuovo ramo è stata la traduzione della base di codice da C (C90) a C++. In precedenza, solo l'interfaccia basata su Qt era scritta in C++. Il motivo principale per portare l'intero progetto in C++ è il desiderio di sfruttare le funzioni aggiuntive fornite nella libreria standard C++ e la disponibilità di un controllo dei tipi più avanzato in C++. L'interfaccia GTK è stata spostata per utilizzare gtkmm, un wrapper GTK per il linguaggio C++.

Per quanto riguarda i miglioramenti, si evidenzia che, aggiunto il supporto per l'utilizzo di torrent in formato BitTorrent v2 e torrent ibridi (solo torrent pronti all'uso per ora, la possibilità di creare torrent basati su BitTorrent 2 apparirà in una delle prossime versioni). In BitTorrent v2, l'uso dell'algoritmo SHA-1 è stato spostato a favore di SHA2-256, che viene utilizzato sia per il controllo dell'integrità dei blocchi di dati sia per le voci negli indici (dizionario informativo), che interrompe la compatibilità con DHT e traccianti.

L'interfaccia web è stata riscritta utilizzando metodi di sviluppo JavaScript più moderni ed è stato adattato per l'uso su dispositivi mobili. Il codice viene salvato dall'utilizzo della libreria jQuery, inoltre l'interfaccia Web compressa ora è solo 68 KB.

El le prestazioni sono state notevolmente migliorate- Il test del lancio del demone di trasmissione con 25k torrent ha mostrato una riduzione del 50% del carico della CPU e del 70% del consumo di memoria rispetto a Transmission 3.00.

L'interazione del processo in background con le interfacce GUI (transmission-qt e Transmission-web) è stata modificata in RPC in esecuzione in modalità tabella, riducendo le dimensioni dei dati trasmessi e riducendo i requisiti di larghezza di banda. Per comprimere i dati trasmessi tramite RPC, viene utilizzata la libreria libdeflate più ottimizzata al posto di zlib.

Tra le altre modifiche che si distinguono:

  • L'utente ha la possibilità di impostare tracker predefiniti che possono essere utilizzati per pubblicizzare tutti i torrent pubblici.
  • I semi appena aggiunti vengono rilasciati immediatamente, con le operazioni di convalida eseguite secondo necessità (senza eseguire un controllo completo prima del lancio).
  • Aggiunta un'opzione per escludere durante la creazione di nuovi torrent informazioni che potrebbero essere utilizzate per identificare indirettamente un utente (ad esempio, data di creazione e User-Agent).
  • Aggiunto il supporto della lista nera per IPv6.
  • Il sistema di unit test è stato portato per utilizzare Google Test.
  • Garantito il rilascio di assemblee basate su Clang nel sistema di integrazione continua.
  • La libreria di base era un test fuzz.
  • Il nuovo processo di verifica del codice è stato implementato negli analizzatori statici Sonarcloud, Coverity, LGTM e clang-tidy.

Infine se sei interessato a saperne di più, puoi controllare i dettagli nel seguente link

Come installare Transmission su Linux?

a coloro che sono utenti di Debian, Ubuntu, Linux Mint o qualsiasi distribuzione derivata da questi, installa l'applicazione con:

sudo add-apt-repository ppa:transmissionbt/ppa -y sudo apt install transmission

Se sono Utenti Fedora o distribuzioni basate su di esso, possono installare l'app con quanto segue comando:

sudo yum installa la trasmissione

Mentre per chi Gli utenti Mandriva Linux devono installare con questo comando:

trasmissione sudo urpmi

Per il caso di coloro che lo sono Gli utenti di openSUSE, dovrebbero digitare quanto segue nel terminale:

sudo zypper installa la trasmissione

Infine, nel caso di coloro che sono utenti di Arch Linux e le distribuzioni da esso derivate, puoi installare con questo comando:

sudo pacman -S trasmissione

Allo stesso modo puoi compilare Transmission sul sistema dal suo codice sorgente, devi solo seguire i seguenti passaggi per farlo.

Il loro codice sorgente è ospitato su GitHub, quindi devono avere il supporto git in modo da poter clonare il repository.

Stiamo per aprire un terminale e digitare quanto segue.

Per prima cosa otterremo il codice sorgente con:

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

Entriamo nella directory:

Trasmissione CD

E iniziamo la compilazione con i seguenti comandi che dobbiamo digitare uno per uno:

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

Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.