Subject: Re: [PATCH v3 02/15] xdiff: introduce rust

From: Collin Funk <[email-masked]>
Date: Wed, 03 Sep 2025 11:22:01 -0700

Sam James <[email-masked]> writes:

> I still think adopting Rust is a compatibility break and a "breaking
> change". Again, keeping in mind that for adopting C99 features (!), the
> Git project used "test balloons" very very recently.
>
>> Nobody else is currently working on the interoperability code and we
>> expressed that we ideally wanted it for Git 3.0.  Being able to use Rust
>> means I can write that code faster, with fewer errors (and hence less
>> debugging time), and better tests.  Otherwise, I'm afraid that it will
>> take longer and we might not have it fully upstream for Git 3.0.
>>
>> We also have this series right now, which we'd have to abandon if we're
>> not going to support Rust right away.  I'd like to retain Ezekiel as a
>> contributor and incorporate Rust, and I think the best time to adopt
>> Rust is now, not at Git 3.0.
>
> I think there's going to be various issues that arise even on platforms
> that support Rust that would make it fitting for Git 3.0, at least for
> the first few releases that incorporate Rust. I'll note that the series
> isn't currently using Meson's Rust integration as QEMU is doing.

Just want to voice my agreement with Sam here.

It seems strange that we have a test balloon for compound literals,
something that GCC has supported since before 2001 [1]. But at the same
time require a platform to support Rust. If a platform has Rust support,
it certainly has a compiler supporting compound literals.

Collin

[1] https://github.com/gcc-mirror/gcc/commit/cedd825f0f18088f7235f02136021bd63a2e12df