Connect with us

Новости

Meta* выпускает систему сборки Buck2

Buck2 поддерживает сборку проектов на языках C++, Python, Rust, Kotlin, Swift, Objective-C, Haskell, OCaml и других.

Опубликовано

/

     
     

Meta* выпустила новую версию Buck, своей системы сборки с открытым исходным кодом. Buck2 описывается как вдвое более быстрая, чем ее предшественница. Buck2 поддерживает сборку проектов на языках C++, Python, Rust, Kotlin, Swift, Objective-C, Haskell, OCaml и других.

Buck — это система сборки, разработанная и используемая Meta еще тогда, когда она называлась Facebook*. Buck была оптимизирована для создания небольших, многократно используемых модулей, состоящих из кода и ресурсов, и поддерживает различные языки и платформы. Изначально проект был запущен десять лет назад, и с тех пор совершенствовался как Facebook, так и разработчиками сообщества.

Buck2 — это переработанная версия Buck, которая стремится сохранить лучшие части Buck1 (с высокой степенью совместимости), но также заимствует идеи из академических исследований и систем сборки, включая Bazel, Pants, Shake и Tup.

Meta утверждает, что среди отличий Buck2 самое главное — это быстрота. Во внутренних тестах он завершает сборку в два раза быстрее, чем Buck1. Во-вторых, вторая версия  также написана в первую очередь для удаленного выполнения — локальное выполнение считается частным случаем удаленного, в отличие от Buck1, где оно было добавлено после. Это означает, что такие вещи, как хэши каталогов, могут быть предварительно вычислены и отправлены на удаленное выполнение, что повышает эффективность.

Кроме того, Buck2 написан на языке Rust, в отличие от Java в Buck1. Это позволяет избежать пауз в GC. Кроме того, все правила Buck2 написаны на Starlark — в Buck1 они были написаны на Java как часть бинарного файла, что делает итерацию правил намного быстрее. А поскольку правила являются внешними по отношению к двоичному файлу, разработчики смогли сделать двоичный файл Buck2 полностью независимым от языка.

Buck2 уже доступен на GitHub и на сайте Buck2.

Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.

Наши партнеры:

LEGALBET

Мобильные приложения для ставок на спорт
Telegram

Популярное

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: