NPM CTO ohiak Entropic paketeen biltegi banatua garatzen du

CJ Silverio, iazko urte amaieran NPM Inc-eko CTO kargua utzi zuena, aurkeztu paketeen biltegi berria Entropikoa, NPMren alternatiba banatu gisa garatzen ari dena, enpresa zehatz batek kontrolatzen ez duena. Entropic-en kodea JavaScript-en idatzita dago eta arabera banatuta Apache 2.0 lizentziapean. Proiektua hilabete baino ez da garatzen eta hasierako prototipo-fasean dago, baina dagoeneko oinarrizko eragiketak onartzen ditu, hala nola paketeak konektatzea, argitaratzea eta instalatzea.

Entropic-en sorreraren arrazoia JavaScript/Node.js ekosistema NPM Inc-en mendekotasun osoa da, paketeen kudeatzailearen garapena eta NPM biltegiaren mantentze-lanak kontrolatzen dituena. Hortxe dauka irabaziak bultzatutako enpresa batek milioika JavaScript garatzaile eta aplikazioren mende dauden sistema baten kontrola, eta astean milaka milioi pakete deskarga prozesatzen dituena.

Langileen kaleratzeen, kudeaketa-aldaketak eta NPM Inc-k inbertitzaileekin izandako flirteek azkenaldian NPMren etorkizunari buruzko ziurgabetasun sentsazioa sortu dute eta konpainiak inbertitzaileen ordez komunitatearen interesak defendatuko dituelako konfiantza eza. Silverioren arabera, NPM Inc negozioa ezin da fidatu komunitateak ez duelako bere ekintzen erantzule eskatzeko indarrik. Gainera, irabaziak lortzeko arretak komunitatearen ikuspuntutik lehen mailako aukerak ezartzea eragozten du, baina dirurik ekartzen ez duten eta baliabide osagarriak behar dituzte, hala nola sinadura digitalaren egiaztapenerako laguntza.

Silveriok ere zalantzan jartzen du NPM Inc-ek bere backendarekin elkarrekintzak optimizatzeko interesa duela, horrek dirua irabazteko ikuspuntutik interesgarriak izan daitezkeen datu-fluxuak gutxitzea ekarriko baitu. Komandoa exekutatzen duzun bakoitzean "npm auditoriaΒ» fitxategiaren edukia kanpotik bidaltzen da pakete-blokeoa, garatzaileak egiten duenari buruzko informazio interesgarri asko biltzen dituena. Horren harira, JavaScript/Node.js komunitateko hainbat kide nabarmen enpresek kontrolatzen ez zuten alternatiba bat garatzen hasi ziren.

Entropic sistemak sare federatuaren printzipioa erabiltzen du, non garatzaile batek, bere baliabideak erabiliz, erabiltzen dituen paketeen biltegiarekin zerbitzari bat zabaldu eta banatutako sare komun batera konektatu dezake, hainbat biltegi pribatu oso bakar batean batzen dituena. Entropic-ek biltegi askoren elkarbizitza dakar, haiekin elkarreraginean lan-fluxu arrunt baten zati gisa.

Pakete guztiak izen-espazioak erabiliz bereizten dira eta bere biltegi nagusia hartzen duen ostalariari buruzko informazioa barne hartzen dute.
Izen-gunea, funtsean, eguneraketak askatzeko eskubidea duten pakete-jabearen edo mantentzaileen taldearen izena da. Oro har, paketearen helbideak "[posta elektroniko bidez babestua]/pkg-izena".
Metadatuak eta mendekotasun-informazioa formatuan definitzen dira TOML.

Pakete bat beste biltegi batzuetako menpekotasunen bidez lotzen den biltegi lokal batean jartzen bada, pakete horiek biltegi lokalean islatzen dira. Honek tokiko biltegia autonomo bihurtzen du eta beharrezko mendekotasun guztien kopiak barne hartzen ditu. NPM biltegi klasikoarekin elkarreragiteko geruza bat dago, irakurtzeko soilik den artxibo gisa tratatzen dena. NPM-tik paketeak ere instala ditzakezu lokalean zabaldutako Entropic inguruneak erabiliz.

Kudeatzeko, komando lerroko tresnak eskaintzen dira zure sare lokalean biltegien hedapena errazten dutenak. Entropic-ek guztiz berria eskaintzen du fitxategietara zuzendutako APIa eta sarean deskargatutako datu kopurua gutxitzen duen biltegiratze sistema bat. Entropic edozein programazio-lengoaitako paketeentzako biltegiak sortzeko erabil daitekeen sistema unibertsala bezala planteatzen da, baina Entropic, hala ere, JavaScript kontuan hartuta garatu da eta hizkuntza horretako proiektuetarako egokiena da.

Iturria: opennet.ru

Gehitu iruzkin berria