Endine NPM tehniline direktor arendab jagatud paketireposiiti Entropic

CJ Silverio, kes eelmisel aastal lahkus NPM Inc. tehnilise direktori ametikohalt, esitles uus pakettide hoidla Entropic, mis areneb välja jaotatud alternatiivina NPM-ile, mis ei kuulu konkreetse ettevõtte kontrolli alla. Entropic kood on kirjutatud JavaScripti keeles ja levitatakse on litsentseeritud Apache 2.0 alusel. Projekt on arenenud ainult kuu aega ja on algsel prototüübi staadiumis, kuid toetab juba põhioperatsioone, nagu ühendamine, avaldamine ja paketid.

Entropic'i loomise põhjuseks on nimetatud täielikku sõltuvust JavaScripti/Node.js ökosüsteemist NPM Inc.-ist, mis kontrollib pakettide halduri arendamist ja NPM hoidla hooldust. Tekkinud on olukord, kus kasumi nimel suunatud ettevõte kontrollib üksi süsteemi, millest sõltuvad miljonid arendajad ja JavaScripti rakendused ning mis töötleb miljardeid pakettide allalaadimisi nädalas.

Hiljutised töötajate vallandamised, juhtkonna vahetus ja NPM Inc.-i flirt investoritega on tekitanud segaduse NPM edasise saatuse osas ning usaldamatuse, et ettevõte kaitseb kogukonna huve, mitte investoreid. Silverio arvates ei saa NPM Inc. äri usaldada, kuna kogukonnal pole tööriistu ettevõtte tegevuse vastutusele võtmiseks. Rohkemgi veel, kasumi nimel suunamine takistab kogukonna seisukohast esmatähtsate, kuid kasumit mitte toovate ja täiendavaid ressursse nõudvate võimaluste, nagu digitaalallkirja verifitseerimise toetamine, elluviimist.

Silverio kahtleb ka selles, et NPM Inc. on huvitatud oma tagaplaadi koostöö optimeerimisest, kuna see tooks kaasa andmevoogude vähenemise, mis võiks olla huvitav monetiseerimise seisukohalt. Iga kord, kui käivitatakse käsk „npm audit“, väljastatakse faili sisu package-lock, mis sisaldab palju huvitavaid andmeid selle kohta, mida arendaja teeb. Vastuseks on mitu silmapaistvat JavaScripti/Node.js kogukonna liiget hakanud arendama alternatiivi, mis ei ole ühegi ettevõtte kontrolli all.

Entropic süsteem kasutab föderaalse võrgu põhimõtet, kus arendaja saab oma ressurssidel käivitada serveri koos tema pakettide hoidla ja ühendada selle ühise jaotatud võrguga, mis koondab eraldi privaatseid hoidlaid. Entropic võimaldab paljude hoidlate koosolekut, millega suhtlemine toimub tavapärase töövoo raames.

Kõik paketid jagatakse nimestike abil ja sisaldavad teavet hosti kohta, kus nende põhihoidla asub.
Nimestik esindab põhimõtteliselt paketi omaniku või hooldaja rühma nime, kellel on õigus uuendusi välja anda. Üldiselt näeb paketi aadress välja nagu «namespace@repohost.com/pkg-name».
Metaandmed ja sõltuvuste informatsioon määratakse formaadis TOML.

Kui pakett, millel on sõltuvused teistest hoidlatest, on paigutatud kohalikku hoidlasse, need paketid peegelduvad kohalikku hoidlasse. Nii muutub kohalik hoidla isepäiseks ja sisaldab kõigi vajalike sõltuvuste koopiaid. On vahekiht klassikalise NPM hoidla suhtlemiseks, mis töödeldakse lugemisõigusega arhiivina. Samuti on võimalik installida pakette NPM-ist, kasutades kohalikult käivitatud Entropic keskkondi.

Haldamiseks on saadaval käsurea tööriistakomplekt, mis lihtsustab hoidlate juurutamist oma kohalikus võrgus. Entropic pakub põhimõtteliselt uusi failidele suunatud API-d ja salvestussüsteemi, mis minimeerivad võrgu kaudu edastatava andmemahu. Entropic esitatakse universaalse süsteemina, mida saab kasutada paketihoidlate loomisel mistahes programmeerimiskeelte jaoks, kuid Entropic on arendatud peamiselt JavaScripti silmas pidades ja sobib kõige paremini selle keele projektidele.

Mängi videot

Allikas: opennet.ru

Osta usaldusväärne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid 🔥 Osta usaldusväärne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid - ProHoster