Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split src/purple out into a crate? #46

Open
lupine opened this issue Apr 10, 2021 · 4 comments
Open

Split src/purple out into a crate? #46

lupine opened this issue Apr 10, 2021 · 4 comments

Comments

@lupine
Copy link

lupine commented Apr 10, 2021

I have a C-based libpurple protocol plugin for Delta Chat. At some point, Delta rewrote itself from C -> Rust, and since discovering the purple-sys crate, I've decided to rewrite my own plugin in Rust.

In this repository, src/purple looks to be a safe wrapper on top of purple-sys. It (and purple-icq generally) looks like a better example to follow than using purple-sys directly in the way pidgin-wechat does. Thanks for putting it together.

Since my plugin is GPL as well, I can just copy the useful code, but I was wondering if you'd consider publishing it as a separate crate, to make it easier to manage dependencies and contributions back? It would also improve discoverability!

It looks like we've also both forked purple-sys itself. You might be interested in integrating these changes into your branch of that as well, if you decide to split out src/purple - sbwtw/libpurple-rust#3

My project is purple-plugin-delta if interested; the rust branch is where I'll be working on the new implementation until it has feature parity.

@aviau
Copy link
Member

aviau commented Apr 10, 2021

This was on our to-do list, but now that there is interest we may look into doing that faster. cc @isra17

@lupine
Copy link
Author

lupine commented Apr 10, 2021

Great to hear! I've already started accumulating changes to my local copy of src/purple, but I'm making an effort to keep them logically separated and will submit them upstream once it's split out :)

@isra17
Copy link
Member

isra17 commented Apr 13, 2021

I did the split and published crates, see #47

@lupine
Copy link
Author

lupine commented Apr 13, 2021

Thanks for that! I've opened some PRs against the purple-rs crate.

I've also created a next branch in my fork which is the result of merging all three, and reworked https://code.ur.gs/lupine/purple-plugin-delta/src/branch/rust to use it. Looks good so far :D : https://github.com/lupine/purple-rs/tree/next

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants