Dəminin yaradıcısı yeni paket meneceri çay hazırlayır

Populyar macOS paket idarəetmə sisteminin (Homebrew) müəllifi Maks Howell, paket menecerindən kənara çıxan və işləyən vahid paket idarəetmə infrastrukturunu təklif edən dəmləmə inkişafının davamı kimi yerləşdirilən Tea adlı yeni paket meneceri hazırlayır. mərkəzləşdirilməmiş depolarla. Layihə əvvəlcə çox platformalı layihə kimi hazırlanır (hazırda macOS və Linux dəstəklənir, Windows dəstəyi inkişaf mərhələsindədir). Layihə kodu TypeScript-də yazılmışdır və Apache 2.0 lisenziyası altında paylanmışdır (dəmləmə Ruby-də yazılmış və BSD lisenziyası ilə yayılmışdır).

Çay konseptual olaraq ənənəvi paket menecerlərinə bənzəmir və “Mən paket quraşdırmaq istəyirəm” paradiqması əvəzinə “Mən paketdən istifadə etmək istəyirəm” paradiqmasından istifadə edir. Xüsusilə, Tea-nın paketi belə quraşdırmaq əmri yoxdur, əksinə, mövcud sistemlə üst-üstə düşməyən paket məzmununu yerinə yetirmək üçün mühit yaratmaqdan istifadə edir. Paketlər ayrıca ~/.tea kataloqunda yerləşdirilir və mütləq yollara bağlı deyildir (onlar köçürülə bilər).

İki əsas iş rejimi təmin edilir: quraşdırılmış paketlərlə ətraf mühitə çıxışı olan komanda qabığına keçmək və birbaşa paketlə əlaqəli əmrləri çağırmaq. Məsələn, "tea +gnu.org/wget" icra edərkən paket meneceri wget yardım proqramını və bütün lazımi asılılıqları endirəcək və sonra quraşdırılmış wget yardım proqramının mövcud olduğu mühitdə qabıq girişini təmin edəcək. İkinci seçim birbaşa işə salınmağı nəzərdə tutur - "tea +gnu.org/wget wget https://some_webpage", burada wget yardım proqramı quraşdırılacaq və dərhal ayrıca mühitdə işə salınacaq. Mürəkkəb zəncirlər yaratmaq, məsələn, white-paper.pdf faylını yükləmək və parıltı yardım proqramı ilə emal etmək mümkündür, aşağıdakı konstruksiyadan istifadə edə bilərsiniz (əgər wget və parıltı yoxdursa, onlar quraşdırılacaq): çay + gnu.org/wget wget -qO- https:/ /tea.xyz/white-paper.pdf | tea +charm.sh/glow glow - və ya daha sadə sintaksisdən istifadə edə bilərsiniz: tea -X wget -qO- tea.xyz/white-paper | çay - X parıltısı -

Bənzər bir şəkildə, skriptləri, kod nümunələrini və bir-laynerləri birbaşa işlədə bilərsiniz, onların işləməsi üçün lazım olan alətləri avtomatik yükləyə bilərsiniz. Məsələn, "çay https://gist.githubusercontent.com/i0bj/…/raw/colors.go -yellow" işlədilməsi Go alət dəstini quraşdıracaq və "-yellow" arqumenti ilə colors.go skriptini icra edəcək.

Çay əmrini hər dəfə çağırmamaq üçün onu virtual mühitlərin universal meneceri və çatışmayan proqramların işləyicisi kimi qoşmaq mümkündür. Bu halda, işləyən proqram mövcud deyilsə, o, quraşdırılacaq və əvvəllər quraşdırılıbsa, öz mühitində işə salınacaq. $ deno zsh: əmr tapılmadı: deno $ cd mənim layihəm $ deno çay: deno.land^1.22 deno 1.27.0 quraşdırılması > ^D

Hazırkı formada Çay üçün mövcud olan paketlər iki kolleksiyada toplanır - pantry.core və pantry.extra, bunlara paket yükləmə mənbələrini, skriptləri və asılılıqları təsvir edən metadata daxildir. pantry.core kolleksiyasına yenilənmiş və Çay tərtibatçıları tərəfindən sınaqdan keçirilmiş əsas kitabxanalar və kommunal proqramlar daxildir. Pantry.extra kifayət qədər stabilləşdirilməmiş və ya icma üzvləri tərəfindən təklif olunan paketləri ehtiva edir. Paketlər arasında hərəkət etmək üçün veb-interfeys təmin edilmişdir.

Çay üçün paketlərin yaradılması prosesi xeyli sadələşdirilmişdir və paketin hər yeni versiyaya uyğunlaşdırılmasını tələb etməyən bir universal package.yml faylı (nümunə) yaratmaqla başa çatır. Paket yeni versiyaları kəşf etmək və onların kodunu endirmək üçün GitHub-a keçid edə bilər. Fayl həmçinin asılılıqları təsvir edir və dəstəklənən platformalar üçün skriptlərin qurulmasını təmin edir. Quraşdırılmış asılılıqlar dəyişməzdir (versiya sabitdir), bu da sol pad insidentinə bənzər vəziyyətlərin təkrarlanmasını aradan qaldırır.

Gələcəkdə heç bir ayrı saxlama ilə bağlı olmayan və metadata üçün paylanmış blokçeyndən və paketlərin saxlanması üçün mərkəzləşdirilməmiş infrastrukturdan istifadə edən qeyri-mərkəzləşdirilmiş depoların yaradılması planlaşdırılır. Buraxılışlar birbaşa baxıcılar tərəfindən təsdiqlənəcək və maraqlı tərəflər tərəfindən nəzərdən keçiriləcək. Paketlərin saxlanmasına, dəstəklənməsinə, paylanmasına və yoxlanılmasına töhfələr üçün kriptovalyuta tokenlərini yaymaq mümkündür.

Dəminin yaradıcısı yeni paket meneceri çay hazırlayır


Mənbə: opennet.ru

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