Ish NPM CTO zhvillon depon e paketave të shpërndara Entropic

CJ Silverio, e cila la postin e saj si CTO e NPM Inc në fund të vitit të kaluar, prezantuar depo e re e paketave Entropike, e cila po zhvillohet si një alternativë e shpërndarë ndaj NPM, e pa kontrolluar nga një kompani specifike. Kodi i Entropic është shkruar në JavaScript dhe shperndare nga licencuar sipas Apache 2.0. Projekti ka vetëm një muaj në zhvillim dhe është në fazën fillestare të prototipit, por tashmë mbështet operacionet bazë si lidhja, publikimi dhe instalimi i paketave.

Arsyeja e krijimit të Entropic është varësia e plotë e ekosistemit JavaScript/Node.js nga NPM Inc, i cili kontrollon zhvillimin e menaxherit të paketave dhe mirëmbajtjen e depove NPM. Ky është vendi ku një kompani që kërkon fitim ka kontrollin e vetëm të një sistemi nga i cili varen miliona zhvillues dhe aplikacione JavaScript dhe i cili përpunon miliarda shkarkime paketash në javë.

Një varg i fundit i pushimeve nga puna, ndryshimet e menaxhmentit dhe flirtimi i NPM Inc me investitorët kanë krijuar një ndjenjë pasigurie për të ardhmen e NPM dhe mungesë besimi se kompania do të mbrojë interesat e komunitetit dhe jo investitorët. Sipas Silverio, biznesit NPM Inc nuk mund t'i besohet sepse komuniteti nuk ka fuqinë për ta mbajtur atë përgjegjës për veprimet e tij. Për më tepër, fokusi në fitimin pengon zbatimin e mundësive që janë parësore nga pikëpamja e komunitetit, por që nuk sjellin para dhe kërkojnë burime shtesë, siç është mbështetja për verifikimin e nënshkrimit dixhital.

Silverio gjithashtu dyshon se NPM Inc është e interesuar të optimizojë ndërveprimet me backend-in e saj, pasi kjo do të çojë në një ulje të flukseve të të dhënave që janë potencialisht interesante nga pikëpamja e fitimit të parave. Sa herë që ekzekutoni komandën "auditimi npm» përmbajtja e skedarit dërgohet nga jashtë paketë-kyç, i cili përfshin shumë informacione interesante rreth asaj që bën zhvilluesi. Si përgjigje, disa anëtarë të shquar të komunitetit JavaScript/Node.js filluan të zhvillonin një alternativë që nuk kontrollohej nga kompani individuale.

Sistemi Entropic përdor parimin e një rrjeti të federuar, në të cilin një zhvillues, duke përdorur burimet e tij, mund të vendosë një server me një depo paketash që ai përdor dhe ta lidhë atë me një rrjet të përbashkët të shpërndarë që bashkon depo private të ndryshme në një tërësi të vetme. Entropic përfshin bashkëjetesën e shumë depove, duke ndërvepruar me ta si pjesë e një fluksi normal pune.

Të gjitha paketat janë të ndara duke përdorur hapësirat e emrave dhe përfshijnë informacione rreth hostit që pret depon e tyre parësore.
Një hapësirë ​​emri është në thelb emri i pronarit të paketës ose grupit të mirëmbajtësve që kanë të drejtën të lëshojnë përditësime. Në përgjithësi, adresa e paketës duket si "[email mbrojtur]/pkg-emri".
Meta të dhënat dhe informacioni i varësisë përcaktohen në format TOML.

Nëse një paketë vendoset në një depo lokale që është e lidhur me varësi nga depo të tjera, këto paketa pasqyrohen në depo lokale. Kjo e bën depon lokale të pavarur dhe përfshin kopje të të gjitha varësive të nevojshme. Ekziston një shtresë për të bashkëvepruar me depo klasike NPM, e cila trajtohet si një arkiv vetëm për lexim. Ju gjithashtu mund të instaloni paketa nga NPM duke përdorur mjedise Entropic të vendosura në nivel lokal.

Për menaxhim, ofrohen mjete të linjës së komandës që thjeshtojnë vendosjen e depove në rrjetin tuaj lokal. Entropic ofron krejtësisht të reja API e orientuar nga skedari dhe një sistem ruajtjeje që minimizon sasinë e të dhënave të shkarkuara në rrjet. Entropic është shpallur si një sistem universal që mund të përdoret për të krijuar depo për paketat në çdo gjuhë programimi, por Entropic megjithatë është zhvilluar me JavaScript në mendje dhe është më i përshtatshmi për projektet në atë gjuhë.

Burimi: opennet.ru

Shto një koment