Live data from Hacker News

Git: Introduce Rust and announce it will become mandatory in the build system

lore.kernel.org

31–40 of 433 posts

Re: Git: Introduce Rust and announce it will become mandatory in the build system

#31

> Introducing Rust is impossible for some platforms and hard for others. Please could someone elaborate on this.

There's at least one proprietary platform that supports Git built by via a vendor-provided C compiler, but for which no public documentation exists and therefore no LLVM support is possible. Ctrl+F for "NonStop" in https://lwn.net/Articles/998115/

Maybe they can resurrect the C backend for LLVM and run that through their proprietary compilers?

It's probably not straightforward but the users of NonStop hardware have a lot of money so I'm sure they could find a way.

Re: Git: Introduce Rust and announce it will become mandatory in the build system

#32
post #16
post #6

Earlier quoted context omitted.

See this page [1], particularly the 'Tier 3' platforms. [1] https://doc.rust-lang.org/beta/rustc/platform-support.html

Thanks for the specifics, really fascinating list! I'm sure I'm being a bit flippant, but it's pretty funny that a list including the Playstation 1, N64, and Apple Watches is in the same conversation as systems that need to compile git from source. Anyone know of anything on that list with more than a thousand SWE-coded users? Presumably there's at least one or two for those in the know?

I don't think the concern is whether a user can compile git from source on said platform, but rather whether the rust standard lib is well supported on said platform, which is required for cross compiling.

Re: Git: Introduce Rust and announce it will become mandatory in the build system

#34
post #24
post #20

Does anyone with insight into Git development know if we should care about this? Is this just a proposal out of nowhere from some rando or is this an idea that a good portion of Git contributors have wanted?

For whatever it might be worth... Looking at the comment thread, at least one person I recognize as a core maintainer seems to be acting as if this is an official plan that they've already agreed on the outline of, if not the exact timing. And they seem to acknowledge that this breaks some of the more obscure platforms out there.

Interesting! I'd certainly say that's worth something. Definitely didn't expect it though given how poorly some people have reacted to Rust being introduced as an optional part of the Linux kernel.

Re: Git: Introduce Rust and announce it will become mandatory in the build system

#35

> Introducing Rust is impossible for some platforms and hard for others. Please could someone elaborate on this.

Rust doesn't support as many CPU architectures as C does (SH4 for example, though there's likely many more better examples.) This might make a much more interesting case for GOT than before https://www.gameoftrees.org/

got is a waste of time, imo.

they could just port the multiprocess pledge stuff to git (and benefit linux too with namespaces)

then all the userfacing changes (i.e. work on git bare instrad of wc) I've been doing for the last decade with a couple lines on my gitconfig file.

Re: Git: Introduce Rust and announce it will become mandatory in the build system

#38
post #36

I'm wondering what's on the horizon with git 3.0? From my (very limited) perspective, I just kind of thought git had settled in to 2.x and there wasn't any reason to break compatibility.

SHA-256 will become the default hash.

Re: Git: Introduce Rust and announce it will become mandatory in the build system

#39
It seems unwise, to me, to tie the life of a project as fundamental, and conceptually simple, as git to a compiler and runtime as complicated as rust.

The beauty of the unsafety of C is partially that it's pretty easy to spin up a compiler on a new platform. The same cannot be said of Rust.

Re: Git: Introduce Rust and announce it will become mandatory in the build system

#40
post #36

I'm wondering what's on the horizon with git 3.0? From my (very limited) perspective, I just kind of thought git had settled in to 2.x and there wasn't any reason to break compatibility.

See https://git-scm.com/docs/BreakingChanges#_git_3_0
Post reply on HN