Издање Базел 1.0 система градње

Представио ослобађање отворених алата за монтажу Базел 1.0, који су развили инжењери из Гугла и који се користи за склапање већине интерних пројеката компаније. Издање 1.0 означило је прелазак на семантичко верзионисање издања и такође је било познато по увођењу великог броја промена које су нарушиле компатибилност уназад. Шифра пројекта дистрибуира лиценциран под Апацхе 2.0.

Базел гради пројекат покретањем потребних компајлера и тестова. Систем изградње је дизајниран од самог почетка да оптимално гради Гоогле пројекте, укључујући веома велике пројекте и пројекте који садрже код на више програмских језика, захтевају опсежно тестирање и изграђени су за више платформи. Подржава прављење и тестирање кода на Јава, Ц++, Објецтиве-Ц, Питхон, Руст, Го и многим другим језицима, као и прављење мобилних апликација за Андроид и иОС. Подржано је коришћење појединачних монтажних датотека за различите платформе и архитектуре; на пример, једна монтажна датотека без промена може да се користи и за серверски систем и за мобилни уређај.

Међу карактеристичним карактеристикама Базела су велика брзина, поузданост и поновљивост процеса монтаже. Да би постигао велику брзину изградње, Базел активно користи технике кеширања и паралелизације за процес изградње. БУИЛД фајлови морају у потпуности да дефинишу све зависности, на основу којих се доносе одлуке да се компоненте поново направе након извршених промена (само измењене датотеке се поново праве) и паралелизују процес склапања. Алат такође обезбеђује поновљиву монтажу, тј. резултат изградње пројекта на машини програмера биће потпуно идентичан изградњи на системима трећих страна, као што су сервери за континуирану интеграцију.

За разлику од Маке и Ниња, Базел користи приступ вишег нивоа изградњи правила склапања, у којем се, уместо дефинисања везивања команди за датотеке које се граде, користе апстрактнији готови блокови, као што је „изградња извршне датотеке у Ц++“, „изградња библиотеке у Ц++“ или „покретање теста за Ц++“, као и препознавање циљних и платформи за прављење. У текстуалној датотеци БУИЛД, компоненте пројекта су описане као гомила библиотека, извршних датотека и тестова, без детаља на нивоу појединачних датотека и команди позива компајлера. Додатна функционалност је имплементирана кроз механизам за повезивање екстензија.

Извор: опеннет.ру

Додај коментар