New advanced, CGo-free SQLite package

296 views
Skip to first unread message

Ross Light

unread,
Apr 30, 2021, 9:42:40 AM4/30/21
to golan...@googlegroups.com
I've created a new Go package for SQLite: zombiezen.com/go/sqlite

It is a fork of crawshaw.io/sqlite that uses modernc.org/sqlite, a CGo-free SQLite package. It aims to be a mostly drop-in replacement for crawshaw.io/sqlite. It includes APIs for streaming blob I/O, schema migrations, and user-defined functions.

The repository also includes a go fix-like tool to convert code that uses crawshaw.io/sqlite to use the equivalent zombiezen.com/go/sqlite APIs.

Try it out and let me know what you think!

Thanks to Jan Mercl and David Crawshaw for early feedback and the amazing packages this builds upon.

-Ross

Amit Saha

unread,
May 1, 2021, 4:14:35 AM5/1/21
to Ross Light, golang-nuts
Hi Ross, Thanks for sharing this. I am curious what's the difference
between your fork and the original repo (which is now gone it seems)?
> --
> You received this message because you are subscribed to the Google Groups "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/3878d18f33bea1eb1d1805bd17705e612da337e8%40hey.com.

Ross Light

unread,
May 1, 2021, 10:55:38 AM5/1/21
to Amit Saha, golang-nuts
The original is still there! https://github.com/crawshaw/sqlite

The story for this package is that I used crawshaw.io/sqlite for a number of projects, realized that I wanted some features that were unlikely to be upstream-able -- for example, the switch to modernc.org/sqlite drops Windows support (at least as of 2021-04-30), and I wanted to rename some symbols. Rather than put burden on the maintainers to review a bunch of large PRs and have them weigh the benefits, I decided to create a fork instead.

-Ross

Amit Saha

unread,
May 1, 2021, 9:43:43 PM5/1/21
to Ross Light, golang-nuts
On Sun, May 2, 2021 at 12:55 AM Ross Light <ro...@zombiezen.com> wrote:
>
> The original is still there! https://github.com/crawshaw/sqlite
>
> The story for this package is that I used crawshaw.io/sqlite for a number of projects, realized that I wanted some features that were unlikely to be upstream-able -- for example, the switch to modernc.org/sqlite drops Windows support (at least as of 2021-04-30), and I wanted to rename some symbols. Rather than put burden on the maintainers to review a bunch of large PRs and have them weigh the benefits, I decided to create a fork instead.

Ah, thanks! About the fork, I sent a PR for your github repo fixing
the URL, which is what led me to quickly think that the upstream was
missing.
Reply all
Reply to author
Forward
0 new messages