Trasmissione 4.0.0
Transmission è un client bittorrent veloce e facile da usare con supporto per la crittografia, un’interfaccia web, scambio peer, collegamenti magnetici, port forwarding DHT, µTP, UPnP e NAT-PMP, supporto webseed, watch directory, modifica tracker, global e limiti di velocità per torrent e altro ancora.
La trasmissione ha una delle impronte di memoria e risorse più basse di qualsiasi principale client BitTorrent. L’overhead leggero della trasmissione è uno dei motivi per cui è così adatto per NAS domestici e server multimediali. Essendo stato utilizzato da Western Digital, Zyxel e Belkin, Transmission offre prestazioni davvero impressionanti su quasi tutti gli hardware compatibili.
Transmission è un progetto open source basato su volontari. A differenza di alcuni client BitTorrent, Transmission non gioca con i suoi utenti per fare soldi.
- La trasmissione non raggruppa barre degli strumenti, annunci pop-up, annunci flash, strumenti di Twitter o altro.
- Non trattiene alcune funzionalità per una versione payware.
- Il suo codice sorgente è disponibile per la revisione da parte di chiunque.
- La trasmissione non tiene traccia degli utenti, il sito Web e i forum non hanno pubblicità o analisi di terze parti.
Registro delle modifiche della trasmissione 4.0.0:
Questa è una versione importante, sia nella numerazione che nello sforzo! È in sviluppo attivo da oltre un anno e ha un enorme elenco di modifiche – oltre un migliaio di commit – dalla trasmissione 3.00. Alcuni dei punti salienti includono:
- Efficienza delle risorse: utilizza meno memoria e meno cicli della CPU
- Comunità migliore: richieste pull accolte e utilizzate
- Modernizzazione del codice: migrazione da C90 al C++ moderno
- Nuove funzionalità: cosa sarebbe una major release senza di esse?
L’efficienza delle risorse
- Il codice è stato ampiamente profilato e migliorato per correggere il codice inefficiente e l’uso della memoria. Ad esempio, uno stress test di avvio del demone di trasmissione con 25.000 torrent è quasi interamente legato all’IO, utilizzando il 50% in meno di cicli della CPU e il 70% in meno di allocazioni di memoria rispetto a Transmission 3.00.
- Le GUI di controllo remoto (trasmissione-qt e trasmissione-web) ora utilizzano la modalità “tabella” dell’API RPC, con conseguente riduzione dei payload/minore utilizzo della larghezza di banda.
- I payload RPC sono ora compressi utilizzando libdeflate, una “libreria fortemente ottimizzata che è significativamente più veloce della libreria zlib”.
Comunità
- Il progetto è molto più reattivo alle segnalazioni di bug e all’invio di codice rispetto al passato.
- C’è un nuovo gruppo di collaboratori volontari che sta lavorando a Transmission!
- Transmission 4.0.0 include oltre 350 nuovi commit della community (vedere la sezione Grazie di seguito e nelle precedenti beta 4.0.0) dalla 3.00 e accoglie nuovi contributori.
- La documentazione è stata spostata nella trasmissione/trasmissione in modo che i contributori possano inviare PR per migliorarla.
Modernizzazione del codice
- L’intera base di codice è stata migrata da C a C++. Nel processo, abbiamo rimosso migliaia di righe di codice personalizzato e abbiamo utilizzato strumenti C++ standard. Il codice del core si è ridotto del 18%. La base di codice di base è stata ampiamente rifattorizzata per essere più testabile e gestibile.
- Il client GTK è stato portato su gtkmm.
- Il client Web è stato riscritto in JavaScript moderno e non utilizza più jQuery. L’intero pacchetto compresso con gzip è ora 68K.
- Gli unit test sono stati ampliati e portati su Google Test. Le build del disinfettante Clang vengono eseguite durante CI.
- La libreria principale è ora sottoposta a test fuzz.
- La trasmissione ora utilizza Sonarcloud, Coverity, LGTM e l’analisi statica clang-tidy sul nuovo codice. Diverse centinaia di avvisi di codice sono stati corretti rispetto a Transmission 3.00.
Nuove caratteristiche
- Supporto per l’utilizzo di torrent BitTorrent v2 e torrent ibridi. (Il supporto per la creazione di torrent v2 e ibridi è previsto per una prossima versione.)
- Gli utenti possono ora impostare tracker “predefiniti” che possono essere utilizzati per annunciare tutti i torrent pubblici.
- I semi appena aggiunti possono iniziare immediatamente e verificare i pezzi su richiesta, invece di aver bisogno di una verifica completa prima che la semina possa iniziare. (#2626)
- Aggiunta un’opzione per omettere informazioni potenzialmente identificative (ad es. User-Agent e data di creazione) durante la creazione di nuovi torrent. (#3452)
- Il client Web è stato riscritto e ora supporta l’utilizzo mobile.
- Durante la creazione di nuovi torrent, gli utenti possono ora specificare la dimensione del pezzo. (#3768, #3145, #2805)
- Le liste di blocco IPv6 sono ora supportate. (#3835)
- A partire dalla 4.0.0-beta.1, le versioni di Transmission ora utilizzano il controllo delle versioni semver.
- Decine di altre nuove funzionalità: troppe per elencarle qui! [note di rilascio complete]
Scarica: Trasmissione a 64 bit | 17,8 MB (Open Source)
Download: trasmissione a 32 bit | 15,7 MB
Collegamenti: Home page della trasmissione | Altri sistemi operativi
Lascia un commento