Right now, there are three separate projects that attempt to provide an SQLite API + bindings:
- https://github.com/dckc/rust-sqlite3 (45 stars, 1700 downloads, last commit: 10/2016)
- https://github.com/stainless-steel/sqlite (19 stars, 4200 downloads, last commit: 11/2016)
- https://github.com/jgallagher/rusqlite (130 stars, 26000 downloads, last commit: 01/2017)
So there are three libraries with recent development activity providing basically the same thing.
dckc and stainless-stell s versions provide both lower level bindings + a higher level API, rusqlite focuses on the higher level API.
I believe this ‘fragmentation’ or duplication of efforts isn’t all that ideal.
Neither for users trying to decide which one to use, nor for potentially wasted developer time.
I’ve invited the respective authors to this thread to discuss, if they could imagine a joining of efforts.
If there’s a good reason for separate crates to exist, maybe they can be explained here, as a reference, so someone who wants to use one of them has a reference.
Please don’t see this as any kind of criticism towards the authors, I’d just like to encourage discussion.