Live data from Hacker News

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

lore.kernel.org

341–350 of 433 posts

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

#341

Earlier quoted context omitted.

You can't really count "dependencies" in the Rust ecosystem by counting the number of crates. Gix itself has 65 crates but if you depended on it that would only really be one dependency. Your average Rust project will have more dependencies than your average C project, but it's not as dramatic as you might think.

Okay, but when I compile a Rust project and I see "0/2000" that gets pulled and built, I panic. > You can't really count "dependencies" in the Rust ecosystem by counting the number of crates. Can you elaborate as to why? I have much less packages (many of them are not even C libraries) installed by my operating system than what a typical Rust project pulls and builds.

Lots of projects break themselves up into multiple crates for various reasons, but they’re still maintained as a whole by the same people.

Take serde, for example: https://github.com/serde-rs/serde

This is four crates, so it shows up as 4/2000. But last week, it would have been 3/2000, because serde_core was extracted very recently: https://github.com/serde-rs/serde/pull/2608

As a serde user, this reorganization doesn’t change the amount of code you’ve been depending on, or who authors that code, but it did add one more crate. But not more actual dependency.

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

#342
post #326

Earlier quoted context omitted.

I'm an industry interest, in the sense that I work in the software industry and I have an interest in Rust.

Fair enough. I just find it mind boggling how much money flows into completely new language ecosystems compared to improvements for C/C++ tooling which would clearly much more effective if you really cared about overall security of the free software world.

The issue with investing similar levels of effort into making C++ safer is the C++ standards committee doesn't want to adopt those kinds of improvements.

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

#343

Earlier quoted context omitted.

Okay, but when I compile a Rust project and I see "0/2000" that gets pulled and built, I panic. > You can't really count "dependencies" in the Rust ecosystem by counting the number of crates. Can you elaborate as to why? I have much less packages (many of them are not even C libraries) installed by my operating system than what a typical Rust project pulls and builds.

> Can you elaborate as to why? Because Rust crates are the "compilation unit" as well as the "publishing unit". So if you are a largish library then you'll likely want to split your library across several crates (to enable things like parallelism in the build process). Then you'll end up with several crates from the same git repo, same developers, that will show up individually in the raw crate count. It's not a perf…

And are these dependencies that get pulled and built general-purpose? I presume it is since it is published, but I have no idea if it is indeed general-purpose, or something like "internal/*/*" in Go where the code is not supposed to be used by any other codebase.

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

#344
post #42

How does this help me as a user of git?

Rust is generally a much better tool for building software than C. When your software is built with better tools, you will most likely get better software (at least eventually / long term, sometimes a transition period can be temporarily worse or at least not better).

> Rust is generally a much better tool for building software than C.

This is an extremely strong statement. And factually incorrect.

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

#345
post #82

It's to a "test balloon" if you have a plan to mandate it and will be announcing that. Unless I suppose enough backlash will cause you to cancel the plan .

It's literally a test of how people will react, so yes, finding out if people will react negatively would be exactly the point of doing the test in the first place. Would you prefer that they don't publicize what their follow-up plans would be to try to make it harder to criticize the plans? If you're against the plan, I'm pretty sure that's the exact type of feedback they're looking for, so it would make more sense…

> It's literally a test of how people will react

What's there to test? It was obvious that the reaction would be overwhelmingly negative, so that's definitely not something they would care about. What else?

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

#346

Earlier quoted context omitted.

No, I'm implying that it would make Git's implementation of submodules less buggy. That is likely the case.

If we're talking about feelings, I find it "not likely" unless, perhaps as a side-effect of rethinking the whole feature all together. Or do you have some actual indicators that the issues with how modules are likely to break your work directory are related to problems that rust avoids?

Yes I do. Rust's strong type system makes logic bugs less likely, because you can encode more invariants into the type system.

This also makes it easier to refactor and add features without risk of breaking things.

The borrow checker also encourages ownership structures that are less error-prone.

Finally the more modern tooling makes it easier to write tests.

If you're thinking "where is the peer reviewed study that proves this?" then there isn't one, because it's virtually impossible to prove even simple things like that comments are useful. I doubt there's even a study showing that e.g. it's easier to write Python than assembly (although that one probably isn't too hard to prove).

That doesn't mean you get to dismiss everything you disagree with simply because it hasn't been scientifically proven.

The things I'm talking about have been noted many times by many people.

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

#347

It's to a "test balloon" if you have a plan to mandate it and will be announcing that. Unless I suppose enough backlash will cause you to cancel the plan .

They did expect backlash, so I believe no amount will cause them to cancel. Rust fanboys() thrive off backlash.

() am myself. Love rust. Hate rust rewrites.

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

#349
post #86

Given that rust only works on e.g. cygwin recently (and still does not build many crates: i try to compile jujutsu and failed), this is a big blow to portability IMHO. While I try to like rust, I think making it mandatory for builds of essential tools like git is really too early.

?? I build Jujutsu and many other Rust programs from source on Windows. Rust has a much better Windows story than C and bash do, due to its heritage as a language built by Mozilla for Firefox.

> Rust has a much better Windows story than C

This is an extremely strong statement. Which is so obviously factually incorrect that I tend to think you might have meant something else.

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

#350

Earlier quoted context omitted.

No one’s laying off COBOL programmers. Specialization has its upsides once the market isn’t saturated!

As someone with experience in this specific niche, yes they absolutely are. There are no longer ten thousand retail chains asking for COBOL-based counterpoint PoS mods on a yearly basis. The COBOL market is basically tenured experts in existing systems or polyglots helping migrate the systems to VB or C# at this point. The market has plummeted and now it's in the final deflationary shrink before death.

Ah, damn, I’m sad to hear that. Always respected the language. :/
Post reply on HN