Ukuhanjiswa kuwumthombo wamahhala, ovulekile, iklayenti le-P2P elingasindi kunethiwekhi ye-BitTorrent.
Ngemuva kweminyaka ecishe ibe mithathu yentuthuko umemezele ukukhishwa kwenguqulo entsha ye-Transmission 4.0.0, inguqulo lapho kwenziwa ukuguqulwa okuphawulekayo kwesisekelo sekhodi, okwavumela ukunciphisa usayizi wekhodi ngo-18%, ukuthuthukisa ukumbozwa kokuhlolwa nokwenza lula ukugcinwa.
Kulabo abasha ku-Transmission, kufanele wazi ukuthi leli iklayenti le-BitTorrent elilula futhi elingafuneki elibhalwe ngo-C futhi liyahambisana nezinhlobonhlobo zezindawo zokusebenzelana nabasebenzisi: i-GTK, Qt, i-Mac yomdabu, isixhumi esibonakalayo sewebhu, i-daemon, i-CLI.
Izici ezintsha eziyinhloko ze-Transmission 4.0.0
El ushintsho olubalulekile egatsheni elisha kwaba ukuhunyushwa kwe-codebase isuka ku-C (C90) iye ku-C++. Ngaphambilini, i-interface esekelwe ku-Qt kuphela eyayibhalwe ku-C++. Isizathu esiyinhloko ukuthumela yonke iphrojekthi ku-C++ iyona isifiso sokusizakala ngemisebenzi eyengeziwe enikezwe kulabhulali evamile ye-C++ kanye nokutholakala kohlobo oluthuthuke kakhulu lokuhlola ku-C++. Isixhumi esibonakalayo se-GTK sihanjiswe ukuze sisebenzise i-gtkmm, isembozo se-GTK solimi lwe-C++.
Mayelana nentuthuko, kugqanyiswa ukuthi, ungeze ukusekelwa kokusebenzisa izifufula ngefomethi ye-BitTorrent v2 kanye nezifufula eziyi-hybrid (kuphela ngaphandle kwebhokisi okwamanje, amandla okudala izifufula ngokusekelwe ku-BitTorrent 2 azovela kokunye kokukhishwa okulandelayo). Ku-BitTorrent v2, ukusetshenziswa kwe-algorithm ye-SHA-1 kususiwe kwavuna i-SHA2-256, esetshenziselwa kokubili ukulawula ubuqotho bamabhulokhi wedatha kanye nokufakiwe kwezinkomba (info-dictionary), ephula ukuhambisana ne-DHT kanye abalandeleli.
Ukusebenzelana kwewebhu kubhalwe kabusha kusetshenziswa izindlela zokuthuthukisa i-JavaScript yesimanjemanje futhi ishintshwe ukuze isetshenziswe kumadivayisi eselula. Ikhodi ilondolozwe ekusebenziseni umtapo wezincwadi we-jQuery, kanye nesixhumi esibonakalayo sewebhu esicindezelwe manje sesingu-68KB kuphela.
El ukusebenza kwaba ngcono kakhulu- Ukuhlola ukwethulwa kwe-daemon yokudlulisela ngezifufula ezingu-25k kubonise ukwehla ngo-50% kumthwalo we-CPU kanye nokwehla ngo-70% kokusetshenziswa kwememori uma kuqhathaniswa ne-Transmission 3.00.
Ukusebenzelana kwenqubo yasemuva nezixhumi ezibonakalayo ze-GUI (i-transmission-qt kanye ne-Transmission-web) kuguqulelwe ku-RPC esebenza kumodi yethebula, kunciphisa usayizi wedatha edlulisiwe kanye nokunciphisa izidingo zomkhawulokudonsa. Ukucindezela idatha edluliswa nge-RPC, kusetshenziswa umtapo wezincwadi we-libdeflate olungiselelwe kangcono esikhundleni se-zlib.
Kwezinye izinguquko ezigqamile:
- Umsebenzisi unethuba lokusetha izilandeleli ezizenzakalelayo ezingasetshenziswa ukukhangisa zonke izifufula zomphakathi.
- Imbewu esanda kufakwa ikhishwa ngokushesha, nemisebenzi yokuqinisekisa eyenziwa njengoba kudingeka (ngaphandle kokuhlola okuphelele ngaphambi kokwethulwa).
- Kwengezwe inketho yokukhipha lapho udala ulwazi olusha lwezifufula olungase lusetshenziselwe ukukhomba ngokungaqondile umsebenzisi (isibonelo, idethi yokudala kanye Nomenzeli Womsebenzisi).
- Kwengezwe ukusekelwa kohlu oluvinjelwe lwe-IPv6.
- Isistimu yokuhlola iyunithi ithuthelwe ukusebenzisa i-Google Test.
- Uqinisekise ukukhishwa kwemihlangano esekwe ku-Clang kusistimu yokuhlanganisa eqhubekayo.
- Umtapo wolwazi ubuwukuhlolwa kwe-fuzz.
- Inqubo entsha yokuhlola ikhodi isetshenziswe ku-Sonarcloud, Coverity, LGTM kanye nabahlaziyi be-clang-tidy static.
Okokugcina uma unentshisekelo yokwazi kabanzi ngakho, ungabheka imininingwane Kulesi sixhumanisi esilandelayo.
Ungayifaka kanjani iTransmission kuLinux?
para labo abangabasebenzisi be-Debian, Ubuntu, Linux Mint noma yikuphi ukusatshalaliswa okususelwe kulokhu, faka uhlelo lokusebenza nge:
I-sudo add-apt-repository ppa: transmissionbt/ppa -y sudo apt install transmission
Uma kunjalo Abasebenzisi be-Fedora noma ukusatshalaliswa okusekelwe kukho, bangakwazi ukufaka uhlelo lokusebenza ngokulandelayo umyalo:
sudo yum ukufaka ukuthunyelwa
Ngenkathi yalabo abathi Abasebenzisi beMandriva Linux kumele bafake ngalo myalo:
ukudluliswa kwe-sudo urpmi
Ngendaba yalabo OpenSUSE abasebenzisi, kufanele bathayiphe okulandelayo esigungwini:
sudo zypper ukufaka transmission
Ekugcineni, esimweni salabo abangabasebenzisi be- I-Arch Linux nokusabalalisa okususelwe kuyo, ungafaka ngalo myalo:
sudo pacman -S transmission
Ngendlela efanayo ungahlanganisa Ukudluliswa kuhlelo kusuka kukhodi yalo yomthombo, kufanele ulandele lezi zinyathelo ezilandelayo ukuze ukwazi ukukwenza.
Ikhodi yabo yomthombo isingathwe kwi-GitHub ngakho-ke kumele babe nokuxhaswa kwe-git ukuze bakwazi ukuhlanganisa indawo yokugcina izinto.
Sizovula ukuphela bese uthayipha okulandelayo kuso.
Okokuqala sizothola ikhodi yomthombo nge:
git clone https://github.com/transmission/transmission Transmission
Sifaka umkhombandlela:
Ukudluliswa kweCD
Futhi siqala ukuhlanganiswa ngemiyalo elandelayo okufanele siyithayiphe ngamunye ngamunye:
isibuyekezo se-git submodule --init mkdir yakha i-cd yakha i-cmake .. yenza i-sudo yenza ukufaka