Iama NPM CTO evoluigas distribuitan pakaĵdeponejon Entropic

CJ Silverio, kiu forlasis sian postenon kiel CTO de NPM Inc fine de la pasinta jaro, prezentita nova pakaĵdeponejo Entropika, kiu estas evoluigita kiel distribuita alternativo al NPM, ne kontrolita fare de specifa firmao. La kodo de Entropic estas skribita en JavaScript kaj distribuita de licencita sub Apache 2.0. La projekto disvolviĝas nur dum unu monato kaj estas en la komenca prototipa stadio, sed jam subtenas bazajn operaciojn kiel konekti, publikigi kaj instali pakaĵojn.

La kialo de la kreado de Entropic estas la kompleta dependeco de la ekosistemo JavaScript/Node.js de NPM Inc, kiu kontrolas la disvolviĝon de la pakaĵmanaĝero kaj prizorgado de la deponejo de NPM. Jen kie profit-serĉanta firmao havas solan kontrolon de sistemo de kiu milionoj da JavaScript-programistoj kaj aplikaĵoj dependas, kaj kiu prilaboras miliardojn da pakaĵelŝutoj semajne.

Lastatempa serio de dungitaj maldungoj, administradŝanĝoj kaj la flirtado de NPM Inc kun investantoj kreis senton de necerteco pri la estonteco de NPM kaj mankon de fido ke la firmao ĉampionos la interesojn de la komunumo prefere ol investantoj. Laŭ Silverio, la komerco de NPM Inc ne povas esti fidinda ĉar la komunumo ne havas la levilforton por respondecigi ĝin pri siaj agoj. Krome, la fokuso pri profitado malhelpas la efektivigon de ŝancoj, kiuj estas primaraj el la vidpunkto de la komunumo, sed ne alportas monon kaj postulas pliajn rimedojn, kiel subtenon por kontrolo de cifereca subskribo.

Silverio ankaŭ dubas, ke NPM Inc interesiĝas pri optimumigado de interagoj kun sia backend, ĉar ĉi tio kondukos al malpliigo de datumfluoj, kiuj estas eble interesaj de monetiga vidpunkto. Ĉiufoje kiam vi rulas la komandon "npm revizio» la enhavo de la dosiero estas sendita ekstere pako-seruro, kiu inkluzivas multajn interesajn informojn pri tio, kion faras la programisto. En respondo, pluraj elstaraj membroj de la JavaScript/Node.js-komunumo komencis evoluigi alternativon kiu ne estis kontrolita fare de individuaj firmaoj.

La Entropika sistemo uzas la principon de federacia reto, en kiu programisto, uzante siajn proprajn rimedojn, povas deploji servilon kun deponejo de pakaĵoj kiujn li uzas kaj konekti ĝin al komuna distribuita reto kiu kunigas malsimilajn privatajn deponejojn en ununuran tuton. Entropiko implikas la kunekziston de multaj deponejoj, interagante kun ili kiel parto de normala laborfluo.

Ĉiuj pakaĵoj estas apartigitaj uzante nomspacojn kaj inkluzivas informojn pri la gastiganto, kiu gastigas sian ĉefan deponejon.
Nomspaco estas esence la nomo de la pakposedanto aŭ grupo de prizorgantoj kiuj havas la rajton liberigi ĝisdatigojn. Ĝenerale, la pakadreso aspektas kiel "[retpoŝte protektita]/pkg-nomo".
Metadatenoj kaj dependecaj informoj estas difinitaj en la formato TOML.

Se pakaĵo estas metita en lokan deponejon kiu estas ligita per dependecoj de aliaj deponejoj, ĉi tiuj pakoj estas spegulitaj en la loka deponejo. Ĉi tio faras la lokan deponejon memstara kaj inkluzivas kopiojn de ĉiuj necesaj dependecoj. Estas tavolo por interagi kun la klasika NPM-deponejo, kiu estas traktata kiel nurlegebla arkivo. Vi ankaŭ povas instali pakaĵojn de NPM uzante loke disfalditajn Entropiajn mediojn.

Por administrado, komandliniaj iloj estas provizitaj, kiuj simpligas la deplojon de deponejoj en via loka reto. Entropikaj proponoj tute novaj dosiero-orientita API kaj stokadosistemo kiu minimumigas la kvanton de datumoj elŝutitaj tra la reto. Entropic estas prezentita kiel universala sistemo, kiu povas esti uzata por krei deponejojn por pakaĵoj en iu ajn programlingvo, sed Entropic estas tamen evoluigita kun JavaScript en menso kaj plej taŭgas por projektoj en tiu lingvo.

fonto: opennet.ru

Aldoni komenton