The "port" terminology is misleading; this is real SQLite, compiled from C to Go using https://gitlab.com/cznic/ccgo/-/tree/master/v4 (by the same author; this library is its most widely used application). The use case is that a lot of Go codebases prefer to completely eschew FFI because a lot of the nice properties of Go's tooling and whatnot (cross-compilation is trivial, binaries are automatically static on Linux, etc.) only hold if the entire build is pure Go.
I was confused a few weeks ago. Check out the go pkg: https://pkg.go.dev/modernc.org/sqlite
1. gitlab.com/cznic/sqlite is the primary repo
2. github.com/cznic/sqlite was the github mirror but it moved
3. github.com/mordernc-org/sqlite is the read-only mirror of the primary repo
Cheers!
The readme really lacks the answer to the "why" question. What's the use case, why should I prefer it over real sqlite?
The "port" terminology is misleading; this is real SQLite, compiled from C to Go using https://gitlab.com/cznic/ccgo/-/tree/master/v4 (by the same author; this library is its most widely used application). The use case is that a lot of Go codebases prefer to completely eschew FFI because a lot of the nice properties of Go's tooling and whatnot (cross-compilation is trivial, binaries are automatically static on Linux, etc.) only hold if the entire build is pure Go.
Because it's cgo-free maybe?
Seems like there are some trademark issues with just calling this SQLite.
SQL would have been SEQL if not for trademark issues, the torch is passed
Gitlab requires js
Would you please host it on a different forge, eg codeberg
HackerNews requires js.
Would you please post this on a different discussion forum?
Codeberg requires html
Would you please host it on a different forge that doesn't require a web browser?
So is this a handmade port vs the translated port done by modernc?
modernc is the name of the GitHub fork (identical repo) of the same project. This is machine translated, not hand written.