Publish sqld on crates
It would be nice to be able to just cargo install sqld. For that we need to temporarily nuke some git-only dependencies like the ones needed for the mvSQLite backend, but I'm personally totally fine with that 🤷
Our main roadblock is https://github.com/rusqlite/rusqlite/pull/1283 - having libSQL supported in the libsqlite3-sys crate. For that to happen, we also need to cook libSQL 0.2.0 - which we should do soon anyway. Once done, I'll go back to https://github.com/rusqlite/rusqlite/pull/1283 and hopefully we'll make it upstream :crossed_fingers:
Once done, there will be a few more things to handle, because crates published on crates.io cannot have custom git dependencies - they need proper crates.io dependencies to be publishable.
- Use upstream
lemon-rs. @MarinPostma : I don't remember anymore, what was the main reason for us using a git rev instead of an official release? https://github.com/libsql/sqld/blob/30e11c9d0d4e601be87d888c421b6b44f4ed7d3b/sqld/Cargo.toml#L39 Maybe whatever it is, it was fixed upstream already? - Temporarily nuke
mwalandmvfsdependencies used in our experimental mvSQLite backend. They aren't published on crates, so we can't rely on them. We can reintroduce and publish the mvSQLite backend oncemvfsgets published (it belongs to @losfair)
I can ask for a release to be cut for lemon
k, great; no rush though, as we need libSQL 0.2.0 first
done => https://github.com/gwenn/lemon-rs/issues/22
Opened an issue in mvSQLite repo: https://github.com/losfair/mvsqlite/issues/105
Should be able to do it soon.
Perfect, thanks!
mvfs is published to crates.io: https://crates.io/crates/mvfs
we also have a lemon-rs release.
@psarna What's the status of mwal? If it is usable it would be great if you can open a PR at https://github.com/losfair/mvsqlite.
@losfair it used to work, but I haven't touched for a while, so I think I need to do the following first:
- Release libsql 0.2.0 (I expect it to happen early in March)
- Get the newest stable Rust bindings for virtual WAL based on 0.2.0
- Rewrite mwal on top of it
- Retest
- Create a PR
Just moved sqld-libsql-bindings to https://crates.io/crates/mvfs, looks like everything compiles just fine. In the following days I'll try to rewrite mwal on top of libSQL 0.2.0 to make it publishable, and then the only thing left before we can publish sqld on crates (I hope) is https://github.com/rusqlite/rusqlite/pull/1283
ah wait, I still need https://github.com/psarna/mvsqlite/commit/e634fb87b2c295d662d62aafa665cd78f60e8e5b to go into mvfs before we move. I'll make it part of the larger mwal pull request.