Jump to content

Бак (программное обеспечение)

Бак
Оригинальный автор(ы) Майкл Болин
Разработчик(и) Мета Платформы , Inc.
Первоначальный выпуск 17 апреля 2013 г .; 11 лет назад ( 17.04.2013 ) [1]
Стабильная версия
2021.01.12.01 / 12 января 2021 г .; 3 года назад ( 12.01.2021 ) [2]
Репозиторий
Написано в Бак1 – Ява
Бак2 – Ржавчина
Операционная система Кросс-платформенный
Лицензия С [3] или
Лицензия Апач 2.0 [4]
Веб-сайт бакс2 .строить  Edit this on Wikidata

Buck — многоязычная система сборки, разработанная и используемая компанией Meta Platforms , Inc. Она была разработана для создания небольших повторно используемых модулей, состоящих из кода и ресурсов в монорепозитории . [5] Он поддерживает множество языков программирования , включая C++ , Swift , Unix Shell , Java , Kotlin , Python , Lua , OCaml , Rust и Go . Он может создавать двоичные выходные данные для различных целевых платформ, включая iOS , Android , .NET и виртуальных машин Java (VM) системы выполнения . Лицензирование Buck1 осуществляется по лицензии Apache 2.0, а Buck2 — по лицензии MIT или Apache 2.0. [3] [4]

Бак требует явного объявления зависимостей. Поскольку все зависимости являются явными и Buck имеет направленный ациклический граф всех исходных файлов и целевых объектов сборки, Buck может выполнять инкрементную перекомпиляцию, перестраивая только целевые объекты после измененных файлов. Бак вычисляет ключ для каждой цели, который представляет собой хеш содержимого файлов, от которых он зависит. Он сохраняет сопоставление этого ключа с целью сборки в кэше сборки.

В 2013 году был выпущен Buck1. Одной из ключевых особенностей стала возможность совместного использования результатов сборки между несколькими разработчиками и непрерывная интеграция (CI), поскольку Buck1 поддерживает API HTTP Cache . [6]

В 2023 году был выпущен Buck2 , в котором утверждалось, что сборки в 2 раза быстрее по сравнению с Buck1. Одним из крупнейших изменений по сравнению с Buck1 является то, что ядро ​​написано на Rust вместо Java , а правила пишутся вне ядра в Starlark (языке, созданном для системы сборки Bazel ). [7]

См. также

[ редактировать ]
  1. ^ Болин, Майкл (14 мая 2013 г.). «Бак: Как мы создаем приложения для Android в Facebook» . Примечания. Фейсбук . Фейсбук Инжиниринг . Проверено 16 июля 2019 г.
  2. ^ «Релизы: Facebook/Buck» . Гитхаб .
  3. ^ Jump up to: а б "бак/лицензия-мит" . 1 декабря 2022 года . Проверено 19 апреля 2023 г.
  4. ^ Jump up to: а б "buck/license-apache" . 1 декабря 2022 года . Проверено 19 апреля 2023 г.
  5. ^ «Обзор» . Бак: инструмент для сборки . Проверено 16 июля 2018 г. Buck предназначен для создания нескольких результатов из одного репозитория, то есть монорепозитория, а не из нескольких репозиториев.
  6. ^ Блюстейн, Нофар. «Представляем кэш-аналитику для более быстрого и эффективного создания непрерывных интеграционных сборок | Использование» . Harness.io . Проверено 6 июня 2023 г.
  7. ^ Криль, Пол (06 апреля 2023 г.). «Мета-система сборки с открытым исходным кодом «значительно быстрее»» . Инфомир . Проверено 6 июня 2023 г.
[ редактировать ]


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 78bf74b9d39e7b7ca28d936970b28a0c__1713808740
URL1:https://arc.ask3.ru/arc/aa/78/0c/78bf74b9d39e7b7ca28d936970b28a0c.html
Заголовок, (Title) документа по адресу, URL1:
Buck (software) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)