Git движется к версии 3.0 с Rust в качестве обязательной зависимости

Git движется к версии 3.0 с Rust в качестве обязательной зависимости


Разработчики Git обсуждают переход на Rust, с официальным RFC, предлагающим сделать его обязательной зависимостью после выпуска версии 3.0.

Rust уже стал важной частью цепочки сборки для бесчисленного количества проектов с открытым исходным кодом, даже прокрался в ядро Linux. А теперь еще один краеугольный камень разработки программного обеспечения — сам Git — готовится принять его тоже.

Недавнее предложение в списке рассылки Git открыло дверь к одному из самых значительных технических сдвигов в истории проекта: сделать Rust обязательным зависимым компонентом, начиная с Git 3.0.

RFC, представленный Патриком Штайнхардтом, описывает двухэтапный план. Сначала поддержка Rust будет введена в систему сборки Git через Meson, обеспечивая единообразие процесса интеграции в различных средах.

Затем, с выпуском Git 3.0, Rust станет обязательным требованием, что означает, что сборка Git без него станет невозможной.

Чтобы подготовиться к этим изменениям, будут созданы новые задания CI с пометкой «breaking-changes». Эти задания помогут своевременно выявлять несовместимости, обеспечивая, чтобы компоненты на Rust не нарушали существующие рабочие процессы.

RFC подчеркивает постепенный переход, давая как разработчикам, так и пользователям время на адаптацию до того, как Rust станет неизбежным.

Если предложение будет принято, оно приведет Git в соответствие с более широкой отраслевой тенденцией: внедрением безопасности памяти и современных инструментов в критически важную инфраструктуру. Однако обязательное использование Rust также может повлиять на упаковку, распространение и участников, которые в настоящее время используют только среды на C.

На данный момент обсуждения продолжаются внутри сообщества Git. Очевидно одно: Git 3.0 выглядит больше чем просто очередным выпуском, вероятно, знаменуя начало новой эры для кодовой базы проекта.

Комментарии

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *