Richterrettich / rpm-rs

A pure rust library for building and parsing RPM's
Other
39 stars 18 forks source link

Status of this project #54

Open uncomfyhalomacro opened 2 years ago

uncomfyhalomacro commented 2 years ago

Hello @Richterrettich, may I know if this project is actively worked on? We have planned to create an alternative package manager for openSUSE called rypper. It is a learning project for me and my friends and I suggested we use this crate. If this is not actively worked on, we can just fork this and improve a lot of stuff that might got overlooked.

I will wait for your response!

Shinyzenith commented 2 years ago

Would love to maintain rpm-rs with you @uncomfyhalomacro. ❤️

cmeister2 commented 2 years ago

Commenting to stay in the loop - I want to use this crate in https://github.com/cmeister2/remote-package but it uses an outdated zstd, which is causing some issues.

EDIT: I forked this and renamed it fez; mostly just to get up to date dependencies.

Shinyzenith commented 2 years ago

@cmeister2 Thank you!

uncomfyhalomacro commented 2 years ago

@cmeister2 Thank you!

Shiny, just so you know, i think we will have to fork this project and update some stuff. I was not able to stay in the loop so I will have to read some things here and there

dralley commented 2 years ago

@Richterrettich Is there a chance you could add a new maintainer such as @drahnr or myself if you do not have time to actively maintain the crate?

I'm maintaining https://github.com/dralley/rpmrepo_metadata and eventually this crate is likely to be one of my critical dependencies.

drahnr commented 2 years ago

Hey 👋, I forked rpm-rs in the past due to inactivity here. I tend to prefer creating entities around projects so they're not bound to individuals that much anymore. That could also be an option for rpm-rs

cmeister2 commented 2 years ago

From my perspective I don't really mind where we go from here. I forked this to https://github.com/cmeister2/fez , updated the dependencies as far as I could in limited time and added the feature I wanted (ability to read the metadata without reading in the whole package).

I'd love the community to coalesce around a single place, wherever that might be. I have a list of improvements that I'd love to make to fez to make it really useful, but equally I'm happy to make patches too.

On Thu, 23 Jun 2022, 06:37 Bernhard Schuster, @.***> wrote:

Hey 👋, I forked rpm-rs in the past due to inactivity here. I tend to prefer creating entities around projects so they're not bound to individuals that much anymore. That could also be an option.

— Reply to this email directly, view it on GitHub https://github.com/Richterrettich/rpm-rs/issues/54#issuecomment-1163969157, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAPA36KXNNYPFWZKTO4BEDDVQPZ3JANCNFSM5WEKVE6Q . You are receiving this because you were mentioned.Message ID: @.***>

uncomfyhalomacro commented 2 years ago

@cmeister2 I will be interested to contribute and use yours 😄 but it take a while. I have lots of stuff to do at uni so most of my time doing projects are postponed for now

korewaChino commented 2 years ago

Hi! I'd love to also maintain this project. We would like to use this for our own alternative package manager for Fedora called anda. It would be very useful to have a pure-rust implementation of RPM.

drahnr commented 2 years ago

I took the liberty to create https://github.com/rpm-rs and invited all interested parties to keep the ball rolling, any 2 approvals of the people invited can merge changes. Any of this is up to discussion obviously, but let's keep talking there :)

dralley commented 2 years ago

Neat, I didn't know that was a supported feature of github, thank you :)

I assume that @Richterrettich is still needed to perform publishes however, at least without changing the crate name?

Speaking of, I emailed him a few days ago, waiting on a response.

uncomfyhalomacro commented 2 years ago

Neat, I didn't know that was a supported feature of github, thank you :)

I assume that @Richterrettich is still needed to perform publishes however, at least without changing the crate name?

Speaking of, I emailed him a few days ago, waiting on a response.

Cool! I wonder if he is still active. It seems his GitHub activity is inactive...

uncomfyhalomacro commented 2 years ago

although if we want to create a new name, i thought of a funny one

rawr - RPM Another Rewrite in Rust 😄

cmeister2 commented 2 years ago

Happy to give people collaborative permissions on fez - pretty sure I'm up to date on all the dependabot issues now. Obviously would be cleaner if there was a separate official fork to rpm-rs though.

On Tue, 19 Jul 2022, 16:45 Soc Virnyl S. Estela, @.***> wrote:

although if we want to create a new name, i thought of a funny one

rawr - RPM Another Rew*rite in R*ust 😄

— Reply to this email directly, view it on GitHub https://github.com/Richterrettich/rpm-rs/issues/54#issuecomment-1189217995, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAPA36OVWIFGUWFIMPF7GVLVU3ESLANCNFSM5WEKVE6Q . You are receiving this because you were mentioned.Message ID: @.***>

drahnr commented 2 years ago

That's what I tried with an org that's independent, another user owned repo doesn't solve the underlying issue really.

uncomfyhalomacro commented 2 years ago

@cmeister2 you could probably join the org or should we focus on your fork?

cmeister2 commented 2 years ago

Happy to join the org, don't appear to have any invites in my email though. Doesn't solve the package name issue though.

On Tue, 19 Jul 2022, 16:56 Soc Virnyl S. Estela, @.***> wrote:

@cmeister2 https://github.com/cmeister2 you could probably join the org or should we focus on your fork?

— Reply to this email directly, view it on GitHub https://github.com/Richterrettich/rpm-rs/issues/54#issuecomment-1189230249, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAPA36JJDCZEEORTHIZMDNTVU3F2RANCNFSM5WEKVE6Q . You are receiving this because you were mentioned.Message ID: @.***>

uncomfyhalomacro commented 2 years ago

Just a heads up. Still "new" to rust because I haven't coded for a while and I never made any major projects yet so I decided to create one called rypper, a rewrite of a package manager for opensuse. The only problem is this library which seems to be an experiment of some sort, hence, the inactivity. And since this is open source, I guess I won't be too worried about your forks.

korewaChino commented 2 years ago

@cmeister2 you could probably join the org or should we focus on your fork?

We could also ask for permission to move to the official RPM organization, but it already has a FFI binding crate for RPM there.

drahnr commented 2 years ago

@cmeister2 you could probably join the org or should we focus on your fork?

We could also ask for permission to move to the official RPM organization, but it already has a FFI binding crate for RPM there.

I oppose that. The development was never meant to become a fully featured rpm implementation with all the cruft. And I fear that precisely this cruft would like into the implementation. At the other hand, I don't see an upside to migrating to the rpm org.

Github does not seem to send invites properly when creating the org, so I invited you again.

cmeister2 commented 2 years ago

@cmeister2 you could probably join the org or should we focus on your fork?

We could also ask for permission to move to the official RPM organization, but it already has a FFI binding crate for RPM there.

I oppose that. The development was never meant to become a fully featured rpm implementation with all the cruft. And I fear that precisely this cruft would like into the implementation. At the other hand, I don't see an upside to migrating to the rpm org.

Github does not seem to send invites properly when creating the org, so I invited you again.

Thanks for that. I've created an MR for most of the changes I made - I haven't included:

dralley commented 2 years ago

We could also ask for permission to move to the official RPM organization, but it already has a FFI binding crate for RPM there.

I oppose that. The development was never meant to become a fully featured rpm implementation with all the cruft. And I fear that precisely this cruft would like into the implementation. At the other hand, I don't see an upside to migrating to the rpm org.

@drahnr @korewaChino For what it's worth, I know many of those people and have a video call with them once a month, I'm able to reach out if that was something we did want to do. I wouldn't ask unless @Richterrettich was on board, however, that would feel improper. (I'm assuming he will come back eventually).

I don't think there's any expectation that just because it's in the official organization that it's a complete implementation. I've asked before with one of my libraries and while I didn't end up bothering to go through with it (yet) they were fine with the idea, even if it wasn't "complete", so long as it didn't get ditched and start bitrotting (which is unfortunately the state that librpm.rs is currently in).

But yes, I don't know that it is necessary or useful, so long as the bus factor is > 1.

dralley commented 2 years ago

@drahnr I also need a new invite. Github has been extremely buggy lately, I've run into a bunch of issues in the past few weeks...

drahnr commented 2 years ago

Done

drahnr commented 2 years ago

@cmeister2 you could probably join the org or should we focus on your fork?

We could also ask for permission to move to the official RPM organization, but it already has a FFI binding crate for RPM there.

I oppose that. The development was never meant to become a fully featured rpm implementation with all the cruft. And I fear that precisely this cruft would like into the implementation. At the other hand, I don't see an upside to migrating to the rpm org. Github does not seem to send invites properly when creating the org, so I invited you again.

Thanks for that. I've created an MR for most of the changes I made - I haven't included:

* my `RpmPkgReader` change. (I do want this in, it shouldn't be part of the MR)

* the relicense to MIT (I prefer MIT, but I guess I can work within the bounds of Apache-2.0)

Relicensing would (to my understanding) require a signoff by all contributors, which is non trivial to achieve, but the sooner the better. I have no strong opinion, I'd generally lean for a dual license iff we ought to change it.

dralley commented 2 years ago

It would, all existing contributors (including @Richterrettich) would need to agree to the license change, you cannot just slap a new license on it.

With that said, I have a few lines of code present and I consent, though my personal preference would be MPL v2 license.

dralley commented 2 years ago

@drahnr For some reason, I still don't have it. I checked spam, checked "promotions" tab, checked both personal and work emails. : /

edit: finally, it worked. Thanks!

dralley commented 1 year ago

@Richterrettich I don't know if you're busy (I do see some activity a few weeks ago) but it would be really great if you could weigh in - even if it's just to give your blessing to a forked package. There's currently no way to update crates.io without uploading a completely new package which would be best avoided if we can.

TommyLike commented 1 year ago

Anyone knows whether this project still maintained?

drahnr commented 1 year ago

Well, https://github.com/rpm-rs is, if there are specific issues, feel free to file em there :)

dralley commented 1 year ago

@sunxiaoguang Is there any chance we could use the crate name that you own (https://crates.io/crates/rpm) as it doesn't appear that you have used it for anything?

(sorry for pinging you from multiple channels, I just have no way to know if my email got filterered, etc.)

TommyLike commented 1 year ago

@dralley looks like they are totally different two things, I mean "Redis Process Manager Module for Rust"

dralley commented 1 year ago

@TommyLike It was never actually used for that though - if you look at the package, it has been on version 0.0.0 for 5 years and the repository that it links to contains no Rust code, and has also had no commits in 5 years.

If you download the 0.0.0 release the only code it contains is the following (and nothing else)

mod rpm {
}

If it were a situation where the crate was actually being used then I would never ask such a thing, but in this case it feels like a reasonable suggestion.

TommyLike commented 1 year ago

@dralley he is working for TiDB, maybe I can ping him in their slack channel.

dralley commented 1 year ago

@TommyLike That would be great - it's really easy to overlook github notifications so I have no idea if he'll see it here. If he has seen it, hopefully it doesn't feel like spamming him though

sunxiaoguang commented 1 year ago

Sorry for overlooking the notifications. I was planning to work on a rust binding of redis module as subprocess. And it never happened other than the initial version written in go and c.

The crate can definitely be used in a better way, let me know what can be helpful.

dralley commented 1 year ago

Oh, hello! No worries about overlooking anything.

@sunxiaoguang I was just wondering - since the maintainer of this crate has kind of disappeared for nearly a year, we have forked it to a new repository, but we will need to publish it under a new crate name as nobody has push rights for the current one.

If you are not planning to use the rpm crate in the future, and since it hasn't been used for anything yet, would you be willing to consider transferring ownership of the rpm crate over to @drahnr for this purpose? If you would rather not, that would be perfectly OK, as we can find another name (probably rpm-oxide). But if it is something you are open to, we would be very grateful.

dralley commented 1 year ago

Development is continuing over here: https://github.com/rpm-rs/rpm-rs

wolfv commented 10 months ago

I've noticed a few people commenting here that are implementing RPM compatible package managers in Rust. We've just released resolvo, a generic, standalone package resolver modelled after libsolv but implemented in pure Rust.

We are curious about extending it to support RPM packages. There are a few items missing which I noted down in this issue: https://github.com/rpm-rs/rpm/issues/176

Would love to get feedback and hear what people think.