Facebook DotSlash layihəsi üçün kodu açıb

Facebook müxtəlif platformalar üçün bir sıra icra edilə bilən faylların yayılmasını asanlaşdırmaq üçün nəzərdə tutulmuş komanda xətti yardım proqramı olan dotslash-ın açıq mənbəyini elan etdi. Utilit cari platformaya uyğun icra edilə bilən faylın yüklənməsini avtomatlaşdıran, bütövlüyünü və icrasını yoxlayan skriptləri işə salmaq üçün nəzərdə tutulmuşdur. Kommunal kod Rust-da yazılmışdır və MIT və Apache 2.0 lisenziyaları altında paylanmışdır.

Utilit cari platforma üçün icra edilə bilən faylları işə salmaq üçün qabıq skriptlərinə bənzər problemləri həll edir, lakin eyni zamanda paketə bütün dəstəklənən platformalar üçün icra olunan faylları daxil etmək ehtiyacını aradan qaldırır. DotSlash həmçinin toplanmış icra edilə bilən fayllar haqqında məlumatı kodla birlikdə depoda saxlamağa imkan verir, eyni zamanda faylların özlərini ayrı-ayrı yükləmə serverlərində yerləşdirir ki, bu da repozitoriyanın ölçüsünün böyüməsinin qarşısını alır və icra zamanı giriş/çıxış sisteminə yükü azaldır. klonlaşdırma əməliyyatları.

DotSlash istifadə edərkən, platformaya xas icra edilə bilən fayllar toplusu dəstəklənən platformalara münasibətdə icra olunan faylın seçilməsi üçün məntiqin təsvirini ehtiva edən tək skriptlə əvəz olunur. DotSlash skriptini işə saldıqdan sonra, cari platforma üçün tələb olunan icra edilə bilən fayl dinamik şəkildə endirilir, paketdən çıxarılır, kriptoqrafik heshlə yoxlanılır və sonrakı əməliyyatlar üçün yerli keşdə saxlanılır. Fayllar sıxılmış formada ötürülür. DotSlash skriptləri GitHub-da dərc olunan buraxılışlar üçün avtomatik olaraq yaradıla bilər.

macOS ARM18.19.0, macOS x64_86 və Linux x64_86 platformaları üçün Node.js 64 konstruksiyalarının yayılması üçün DotSlash skriptinə nümunə: #!/usr/bin/env dotslash { “name”: “node-v18.19.0”, “ platformalar”: { "macos-aarch64": { "ölçüsü": 40660307, ​​"hash": "blake3", "həzm": "6e2ca33951e586e7670016dd9e503d028454bf9249d5bf556347d3bf98d347ffc34",18.19.0c "forma". "yol": " node- v64 -darwin-arm18.19.0/bin/node", "provayderlər": [ { "url": "https://nodejs.org/dist/v18.19.0/node-v64-darwin-arm86. tar.gz" } ] }, "macos-x64_42202872": { "ölçüsü": 3, "hesh": "blake37521058114", "digest": "7e71f0e3de8042fe8c7908305fa9115488c6c" ": "tar.gz", "yol" : "node-v29 .514-darwin-x9/bin/node", "provayderlər": [ { "url": "https://nodejs.org/dist/v2/node-v24-darwin- x18.19.0.tar.gz " } ] }, "linux-x64_18.19.0": { "ölçüsü": 18.19.0, "hesh": "blake64", "digest": "86b64fc44694523a3b72bedc81a3a30fafc7a1b09e3ea4478" ": "tar.gz", " yol ": "node -v1-linux-x02/bin/node", "provayderlər": [ { "url": "https://nodejs.org/dist/v5/node-v0- linux-x04.tar .gz" } ] } } }

Mənbə: opennet.ru

Добавить комментарий