Facebook parantos muka kodeu pikeun proyék DotSlash

Facebook ngumumkeun open source of dotslash, utilitas garis paréntah anu dirancang pikeun ngagampangkeun nyebarkeun sakumpulan file anu tiasa dieksekusi pikeun platform anu béda. Utilitas ieu dirancang pikeun ngajalankeun skrip anu ngajadikeun otomatis undeuran file anu tiasa dieksekusi anu cocog pikeun platform ayeuna, mariksa integritas sareng palaksanaanna. Kodeu utilitas ditulis dina Rust sareng disebarkeun dina lisensi MIT sareng Apache 2.0.

Utiliti ngarengsekeun masalah anu sami sareng skrip cangkang pikeun ngaluncurkeun file anu tiasa dieksekusi pikeun platform ayeuna, tapi dina waktos anu sami ngaleungitkeun kabutuhan ngalebetkeun file anu tiasa dieksekusi pikeun sadaya platform anu dirojong dina bungkusan. DotSlash ogé ngamungkinkeun anjeun pikeun nyimpen inpormasi ngeunaan file laksana anu dikumpulkeun dina gudang sareng kodeu, bari nempatkeun file sorangan dina server boot anu misah, anu ngahindarkeun kamekaran ukuran gudang sareng ngirangan beban dina sistem input / output nalika ngajalankeun. operasi kloning.

Nalika nganggo DotSlash, set file laksana khusus platform diganti ku hiji naskah anu kalebet pedaran ngeunaan logika pikeun milih file anu tiasa dieksekusi dina hubungan sareng platform anu didukung. Saatos ngajalankeun skrip DotSlash, file eksekusi anu diperyogikeun pikeun platform ayeuna diunduh sacara dinamis, dibongkar, diverifikasi ngalawan hash kriptografi, sareng disimpen dina cache lokal pikeun ngajalankeun salajengna. File ditransferkeun dina bentuk anu dikomprés. Skrip DotSlash tiasa didamel sacara otomatis pikeun sékrési anu diterbitkeun dina GitHub.

Conto skrip DotSlash pikeun nyebarkeun Node.js 18.19.0 ngawangun pikeun platform macOS ARM64, macOS x86_64 sareng Linux x86_64: #!/usr/bin/env dotslash {"name": "node-v18.19.0", " platforms": { "macos-aarch64": { "ukuran": 40660307, ​​​​"hash": "blake3", "digest": "6e2ca33951e586e7670016dd9e503d028454bf9249d5ff556347"c "f3d98ff347"c "d34ff18.19.0c" : " node- v64 -darwin-arm18.19.0/bin/node", "panyadia": [{ "url": "https://nodejs.org/dist/v18.19.0/node-v64-darwin-arm86. tar.gz" } ] }, "macos-x64_42202872": { "ukuran": 3, "hash": "blake37521058114", "digest": "7e71f0e3de8042fe8c7908305fa9115488e6cd29c514cd", "9c2c24c18.19.0f64e18.19.0c18.19.0cd" .gz", "jalur" : "node-v64 .86-darwin-x64/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v44694523/node-v3-darwin- x72.tar.gz " } ] }, "linux-x81_3": { "ukuran": 30, "hash": "blake7", "digest": "1b09fc3a4478b1bedc02a5a0fafc04a15b23e3ebf9dformat",89212ebf18.19.0d64ebf18.19.0d18.19.0dformat, .gz", " jalur ": "node -v64-linux-xXNUMX/bin/node", "providers": [{ "url": "https://nodejs.org/dist/vXNUMX/node-vXNUMX- linux-xXNUMX.tar .gz" } ] } } }

sumber: opennet.ru

Tambahkeun komentar