GIT 3.0 Proposal: Rust Required in Assembly Setup

Proposed Integration of Rust in Git Development Sparks Debate

In the developers’ mailing list of the popular version control system Git, discussions have arisen regarding the proposal to include components written in the RUST language as part of the main composition of Git. This would involve adding Rust to the list of mandatory dependencies necessary for the assembly of Git. The integration of Rust into Git development is suggested to follow a similar path as the previous transition to supporting the C99 specification in the Git code base – initially introducing Rust support in test mode and eventually making it a mandatory component starting with Git 3.0.

In the recent version of Git, Git 2.49, the addition of support for Rust was not mandatory for assembly, allowing developers to work on Git components in the Rust language. Two CRATE packages, namely LIBGIT-Sys and Libgit, were included to provide low-level and high-level Rust APIs over the internal libraries used in Git.

Furthermore, a proposal was made in July within the Git developers’ community to integrate Rust components, optimize code, and modify the XDIFF utility to potentially increase efficiency by 5-19%. Despite the proposal to add Rust as a mandatory dependency, a decision on this matter was not reached at the time. The debate has now resurfaced with a second attempt to discuss the inclusion of Rust as a compulsory dependency for Git assembly.

While there are arguments in favor of optional Rust support in Git, some developers have expressed concerns about the lack of proper platform support in Rustc for all platforms currently supported by Git. The debate continues among Git developers, with a divide between those in favor and those against the proposal.

/Reports, release notes, official announcements.