„Bazel 1.0“ kūrimo sistemos išleidimas

Įvesta atviro surinkimo įrankių išleidimas Bazel 1.0, kurį sukūrė „Google“ inžinieriai ir naudojo daugumai įmonės vidinių projektų. 1.0 leidimas pažymėjo perėjimą prie semantinio leidimo versijų kūrimo ir taip pat pasižymėjo tuo, kad įvedė daug pakeitimų, dėl kurių buvo pažeistas atgalinis suderinamumas. Projekto kodas išplatino licencijuota pagal Apache 2.0.

„Bazel“ kuria projektą vykdydamas reikiamus kompiliatorius ir testus. Sukūrimo sistema sukurta nuo pat pradžių, kad būtų galima optimaliai kurti „Google“ projektus, įskaitant labai didelius projektus ir projektus, kuriuose yra kodas keliomis programavimo kalbomis, kuriuos reikia išbandyti ir kurie yra sukurti kelioms platformoms. Jis palaiko kodo kūrimą ir testavimą Java, C++, Objective-C, Python, Rust, Go ir daugeliu kitų kalbų, taip pat mobiliųjų programų, skirtų Android ir iOS, kūrimą. Palaikomas atskirų surinkimo failų naudojimas skirtingoms platformoms ir architektūroms, pavyzdžiui, vienas surinkimo failas be pakeitimų gali būti naudojamas tiek serverio sistemai, tiek mobiliajam įrenginiui.

Tarp išskirtinių „Bazel“ savybių yra didelis surinkimo proceso greitis, patikimumas ir pakartojamumas. Kad pasiektų didelę kūrimo spartą, „Bazel“ kūrimo procesui aktyviai naudoja talpyklos ir lygiagretinimo būdus. BUILD failai turi visiškai apibrėžti visas priklausomybes, kurių pagrindu priimami sprendimai po pakeitimų atstatyti komponentus (atkuriami tik pakeisti failai) ir sugretinti surinkimo procesą. Įrankiai taip pat užtikrina pakartotinį surinkimą, t.y. Projekto kūrimo kūrėjo kompiuteryje rezultatas bus visiškai identiškas trečiųjų šalių sistemoms, pvz., nuolatinio integravimo serveriams.

Skirtingai nei Make ir Ninja, Bazel naudoja aukštesnio lygio metodą, kad sukurtų surinkimo taisykles, kai užuot apibrėžęs komandų susiejimą su kuriamais failais, naudojami abstraktesni paruošti blokai, pvz., „vykdomojo failo kūrimas C++“, „bibliotekos kūrimas C++“ arba „C++ testavimo vykdymas“, taip pat tikslinių ir kūrimo platformų nustatymas. Tekstiniame faile BUILD projekto komponentai aprašomi kaip bibliotekų, vykdomųjų failų ir testų krūva, nedetalizuojant atskirų failų ir kompiliatoriaus iškvietimo komandų. Papildomos funkcijos įgyvendinamos naudojant plėtinių prijungimo mechanizmą.

Šaltinis: opennet.ru

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