-
Notifications
You must be signed in to change notification settings - Fork 87
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
Consider merging with lmdb_rs #4
Comments
I don't really understand why there are two LMDB crates, but I mostly prefer this one's API so far (I've tried them both) |
What are the differences? |
And now there's this! https://github.com/fullcontact/lmdb-zero |
At least it gives a rationale:
|
Would love to hear specific cases where this crate is doing that /cc @fullcontact |
review on the sibling issue: vhbit/lmdb-rs#32 (comment) |
I wrote a summary of the differences between this crate and https://github.com/vhbit/lmdb-rs. My conclusion is that the vhbit crate is a dead-end or else requires breaking changes to its API that will effectively make it redundant with this crate. Follow the link for details, though I summarize the differences here:
In my opinion, the vhbit crate provides no benefits over what this crate provides and it has many disadvantages with no clear path to distinguishing itself as an advantageous crate. I see no reason for this crate to merge with it. As for lmdb-zero, I haven't made a deep analysis but am intrigued with the idea of an LMDB crate providing access to all the low-level nuts and bolts of the C API. Superficially, I like the idea of a single crate that merges the low-level access with higher-level abstractions. Specifically, however, I don't know what that would entail or even if it makes sense. |
Thanks for the thorough writeup, @cmbrandenburg! You're findings mirror my own, and those of people I've talked too, but it's great to have it thoroughly researched and summarized. I've resisted commenting on this issue up till now because I feel like the crates can stand on their own, but it certainly helps new comers when evaluating to have impartial sources spend effort and share their findings. Thanks again, and thanks for taking the effort to send issues / PRs to both crates. |
@danburkert, you're welcome. I don't see myself doing a deep analysis on lmdb-zero anytime soon—though if I were starting over on my LMDB application, I would for sure take a look at it. What are your thoughts on merging with that crate? I very much like the idea of a crate that provides both a high-level and low-level abstraction on top of LMDB. |
Are you asking about lmdb-zero in particular? I'm not keen on merging this crate with another. As far as the things lmdb-zero claims about 'other lmdb crates' on their README: I don't think they apply to this crate. lmdb-zero provides zero concrete examples, however, so it's difficult to say. Some of the things contained in that README are interesting, though:
The goal of
This should have been obvious to anyone that read through the
One thing to remember is that, when it comes to open source projects, inactivity != abandoned and activity != quality |
@danburkert, thanks. |
Throwing this in the mix https://github.com/mozilla/rkv . Not that it necessarily relates to the original issue of merging with other libraries, but might be relevant as a point of comparison/learnings. Edit: looks like rkv depends on their own fork of this repo: https://github.com/mozilla/lmdb-rs |
update URLs and credit upstream repo
https://github.com/vhbit/lmdb-rs
The text was updated successfully, but these errors were encountered: