zombiezen.com/go/sqlite reaches 1.0
I’m proud to announce that my CGo-less SQLite Go package,
zombiezen.com/go/sqlite
,
has finally reached version 1.0.
This has been the culmination of almost three years of work:
I started on this project in March of 2021 as a fork of
David Crawshaw’s crawshaw.io/sqlite
to build on top of Jan Mercl’s amazing modernc.org/sqlite
.
I’ve built a number of features on top of this package such as:
- A simple schema migration framework
- A basic REPL
- User-defined functions, including windows and aggregates
- Custom virtual tables
- Utilities for running embedded SQL scripts
- A
go fix
-like tool for migrating existing code usingcrawshaw.io/sqlite
- Support for running restricted SQL
Over this time, the project has been used in about a dozen open source projects and has over 350 stars on GitHub. I’ve successfully used it in a number of personal projects, including a personal accounting program and my Nix caching layer.
With the 1.0 release, I’m proud to call the API stable so that Go applications
can continue to build on it for their storage needs.
If you’re using zombiezen.com/go/sqlite
for something interesting,
let me know about it,
and consider supporting me on GitHub.