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

Export a C API #84

Open
bilelmoussaoui opened this issue Apr 18, 2024 · 5 comments
Open

Export a C API #84

bilelmoussaoui opened this issue Apr 18, 2024 · 5 comments
Labels
client enhancement New feature or request help wanted Extra attention is needed

Comments

@bilelmoussaoui
Copy link
Owner

To fully replace libsecret. I wouldn't try to make it glib-y as that would be painful, depends on whoever does the work.

@bilelmoussaoui bilelmoussaoui added enhancement New feature or request help wanted Extra attention is needed client labels Apr 18, 2024
@A6GibKm
Copy link
Collaborator

A6GibKm commented Apr 18, 2024

I kinda want to leave glib out of the equation, but it could buy so much for us: Language bindings.

@bilelmoussaoui
Copy link
Owner Author

I kinda want to leave glib out of the equation, but it could buy so much for us: Language bindings.

I don't care about other languages. They can create bindings from the exported C API if they want to

@sophie-h
Copy link
Collaborator

I don't think it's a good idea to try to replace a glib API by not providing a glib API

@ueno
Copy link
Collaborator

ueno commented Apr 19, 2024

I would suggest starting with the simple API, which should be sufficient for most applications and independent of glib, though supporting async operations might be tricky.

@bilelmoussaoui
Copy link
Owner Author

I don't think it's a good idea to try to replace a glib API by not providing a glib API

The problem is converting a Rust future to a gio::Task and then wrapping it in a C API would be just painful to maintain and very error-prone. But I leave that to whoever want to implement it to see what is easier to achieve

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants