Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-05-03 Thread Daniel Alley
I mean, it's not a full implementation because it only handles building, signing and parsing packages (not rpmdb management or specfile parsing or anything else), but, it kind of already exists https://github.com/rpm-rs/rpm -- Reply to this email directly or view it on GitHub:

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-04-09 Thread Panu Matilainen
And we're live now with https://github.com/rpm-software-management/rpm/pull/3028 :partying_face: For the morbidly curious, there was certainly more to clean up before that, the major preparatory work being in https://github.com/rpm-software-management/rpm/pull/2977,

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-04-02 Thread ニール・ゴンパ
Yeah, I've always been afraid of broaching the idea seriously. I had joked about this with @ffesti a few times at the openSUSE Conference, but I'm really glad to see us doing this. -- Reply to this email directly or view it on GitHub:

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-04-02 Thread Panu Matilainen
Nice to see somebody besides ourselves being excited about this :smile: And yeah that is really a big part of the point: rpm's data structures aren't really that exotic, but to someone new it's all lost in the details of this specific implementation, and then we have like three different

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-29 Thread ニール・ゴンパ
For what it's worth, I'm excited about the transition to C++, because as a C++ programmer, I feel much more comfortable working my way through and cleaning things up leveraging the things I know well. So I'm looking forward to this! -- Reply to this email directly or view it on GitHub:

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-28 Thread Colin Walters
> As such, moving to C++ now will probably make it harder to move to Rust later. Well, maybe. My original comment here remember was about how we very intentionally moved rpm-ostree to "C compiling as C++" explicitly to bridge with cxx.rs. This...kind of worked in some ways, and definitely

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-22 Thread Neal H. Walfield
Got it. My comment was meant to be constructive. I'm sorry if it didn't come across that way. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2983#discussioncomment-8878520 You are receiving this because you are subscribed to

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-22 Thread Panu Matilainen
Let me put it this way: if there was a will to move to Rust, maybe sitting out a few more years waiting for technical matters to sort themselves would be a meaningful option. That's just not the case. -- Reply to this email directly or view it on GitHub:

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-22 Thread Panu Matilainen
If somebody wants to rewrite rpm from scratch in Rust in another 15 years when I'm retired, be my guest. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2983#discussioncomment-8877799 You are receiving this because you are

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-22 Thread Neal H. Walfield
I understand that rpm is not ready for Rust *today*. But I wonder if rpm will be ready for Rust in 3 or 4 years. In particular, the Rust ecosystem is quickly becoming a fundamental dependency. For instance, [Rust is already used in the Linux kernel](https://lwn.net/Articles/914458/). So

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-22 Thread Panu Matilainen
There was plenty enough surrounding rpm-sequoia. Rust is not an option, that is not up to discussion. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2983#discussioncomment-8877589 You are receiving this because you are

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-22 Thread Colin Walters
> For starters, it's a show-stopper as a bootstrapping dependency for something > as early in that chain as rpm. (Threading this) do you have a link to these discussions? There's a *ton* of work on bootstrapping Rust (and systems in general) on self-hosting OSes/distributions. The [GUIX

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-22 Thread Panu Matilainen
As for exceptions: rpm's allocator has the terminate-on-failure behavior, which in practise means any call to the rpm API could abruptly terminate your process. Which is not a whole lot different from -fno-exceptions. -- Reply to this email directly or view it on GitHub:

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-22 Thread Panu Matilainen
Yes, people keep bringing up Rust. It's just not a viable option for rpm, for a multitude of reasons. For starters, it's a show-stopper as a bootstrapping dependency for something as early in that chain as rpm. I won't go further because it'd be pointless because of that first reason. --

Re: [Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-21 Thread Colin Walters
I have some experience with this; we did a similar thing in rpm-ostree starting around https://github.com/coreos/rpm-ostree/pull/2336#issuecomment-739556744 The rationale there was actually to aid porting to Rust, because we could use https://cxx.rs/ There were a lot of things there, see

[Rpm-maint] [rpm-software-management/rpm] Return to Tralla La or: RPM in C++ (Discussion #2983)

2024-03-18 Thread Panu Matilainen
Ever since the RPM upstream reboot in 2006, we've been striving to replace the old-school, hand-written pointer gymnastics with general purpose APIs in the codebase. We've come a long way, but all this time we've been dreaming about richer data structures than C has to offer. Of course in C,