Facebookek DotSlash proiekturako kodea ireki du

Facebook-ek dotslash-en iturburu irekia iragarri zuen, plataforma ezberdinetarako fitxategi exekutagarri multzo bat banatzeko errazagoa izan dadin diseinatutako komando-lerroko erabilgarritasuna. Utilitatea uneko plataformarako egokia den fitxategi exekutagarri baten deskarga automatizatzen duten script-ak exekutatzeko diseinatuta dago, bere osotasuna eta exekuzioa egiaztatuz. Erabilgarritasun-kodea Rust-en idatzita dago eta MIT eta Apache 2.0 lizentzien arabera banatzen da.

Utilitateak egungo plataformarako fitxategi exekutagarriak abiarazteko shell scripten antzeko arazoak konpontzen ditu, baina, aldi berean, paketean onartzen diren plataforma guztietarako fitxategi exekutagarriak sartzeko beharra ezabatzen du. DotSlash-ek, halaber, bildutako fitxategi exekutagarriei buruzko informazioa biltegi batean gordetzeko aukera ematen du kodearekin batera, fitxategiak abio-zerbitzari bereizietan jartzen dituen bitartean, eta horrek biltegiaren tamaina haztea saihesten du eta sarrera/irteera sistemaren karga murrizten du burutzean. klonazio-eragiketak.

DotSlash erabiltzean, plataformako berariazko fitxategi exekutagarrien multzoa script bakarrarekin ordezkatzen da, fitxategi exekutagarria hautatzeko logikaren deskribapena barne hartzen duena onartzen diren plataformekin lotuta. DotSlash script bat exekutatu ondoren, uneko plataformarako beharrezkoa den fitxategi exekutagarria dinamikoki deskargatzen da, deskonpaktatu, hash kriptografiko baten aurka egiaztatzen da eta cache lokal batean gordetzen da hurrengo exekuzioetarako. Fitxategiak forma konprimituan transferitzen dira. DotSlash scriptak automatikoki sor daitezke GitHub-en argitaratutako bertsioetarako.

MacOS ARM18.19.0, macOS x64_86 eta Linux x64_86 plataformetarako DotSlash script baten adibidea: #!/usr/bin/env dotslash { “name”: “node-v64”, “ plataformak”: { "macos-aarch18.19.0": { "tamaina": 64, ​​​​"hash": "blake40660307", "digest": "3e6ca2e33951e586dd7670016e9d503bf028454d9249ffc5d556347bf3d98f347d34c18.19.0d64d18.19.0d18.19.0e64e86dd64e42202872d3... bidea": " node- v37521058114 -darwin-arm7/bin/node", "hornitzaileak": [ { "url": "https://nodejs.org/dist/v71/node-v0-darwin-arm3. tar.gz" } ] }, "macos-x8042_8": { "tamaina": 7908305, "hash": "blake9115488", "digest": "6e29f514e9de2fe24c18.19.0fa64e18.19.0": "blake18.19.0": "digest" "tar.gz", "bidea" : "node-v64 .86-darwin-x64/bin/node", "hornitzaileak": [ { "url": "https://nodejs.org/dist/v44694523/node-v3-darwin- x72.tar.gz " } ] }, "linux-x81_3": { "tamaina": 30, "hash": "blake7", "digest": "1b09fc3a4478b1bedc02a5a0fafc04a15b23d3e9eeb89212d18.19.0e64", "digest" ": "tar.gz", " bidea ": "node -v18.19.0-linux-x18.19.0/bin/node", "hornitzaileak": [ { "url": "https://nodejs.org/dist/v64/node-vXNUMX- linux-xXNUMX.tar .gz" } ] } } }

Iturria: opennet.ru

Gehitu iruzkin berria