sqlite
xo
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sqlite
- Show HN: Roast my SQLite encryption at-rest
-
Show HN: My Go SQLite driver did poorly on a benchmark, so I fixed it
> I would've probably picked the modernc variation
Heads up about the modernc library, it has been stuck on an old version of sqlite for several months [1]. It seems like maintainer time is the limiting factor [2]. There has been a call to arms on that issue page, the maintainer is looking for help, but it looks like not much has arrived. It seems like it might trace back to blockers in the C-to-Go compiler.
It's a major undertaking and a very impressive piece of work, but I'm not surprised it's a struggle when big roadblocks get hit. I hope they find a way to progress, but I'm very relieved to be seeing some CGo-free alternatives like ncruces/go-sqlite3 emerging. I'm going to give it a try for sure and see if I can live with the compromises.
Squinn-go looks very compelling too, but I don't like that it requires the squinn binary to already be installed on a user's machine, I think that gives with one hand and takes with the other: sure, I get to avoid CGo, but I also lose the turnkey, single-command install, static build benefits Go brings out of the box.
Seconding the point about nitty gritty, I'd read it for sure too!
[1]: https://gitlab.com/cznic/sqlite/-/issues/154
-
Show HN: Sqinn-Go is a Golang library for accessing SQLite databases in pure Go
No, but that has the disadvantage of being C compiled into Go, then being compiled into native executable.
I'm actually surprised by how readable this came out; props to the Go->C compiler author. But you can guess that pushing this sort of thing through the Go compiler is going to cause some slowdowns due to sheer paradigm mismatch: https://gitlab.com/cznic/sqlite/-/blob/master/lib/sqlite_lin...
-
Show HN: MongoDB Protocol for SQLite
FWIW, we use a version of SQLite transpiled into Go to avoid CGI problems: https://gitlab.com/cznic/sqlite
-
Go port of SQLite without CGo
It could be clearer in the readme, but note that this is a machine translation from C to Go, repeated for every OS-Arch pair. Example of the one you're most likely to use in production: https://gitlab.com/cznic/sqlite/-/blob/master/lib/sqlite_linux_amd64.go
xo
-
Open-sourcing SQX, a way to build flexible database models in Go
i like xo's approach https://github.com/xo/xo but it is as is. I would love if something similar comes along that is used by db practititoners that is actively used and supported.
- PHP to Golang
-
Best sqlc alternative for dynamic queries?
I use xo https://github.com/xo/xo . It generates CRUD queries by default so i don't have to write basic queries and it has option to write complex queries like sqlx. Only issue is it is not well documented.
-
Why SQL is right for Infrastructure Management
SQL is an old, irregular language to work with, but it is better known than HCL and SQL already has it's own Pulumi/CDK in the form of every ORM with introspection (like Javascript's Prisma, Python's Django, Go's XO etc) and QueryBuilder (LINQ, Knex, etc) in whatever programming language you prefer. You probably already know it.
-
Help with XO's new templating, how to access fields and params
I am using the library xo to generate basic data retrieval code from a sql schema for a crud api.
-
Matt Mueller: Building Modern Web Applications Faster With Bud
Sorry for the confusion, we're not generating the database client itself, more like generating an ORM around a database client. The ORM takes these database clients as dependencies. It's very similar to the way XO works with it's multi-database support: https://github.com/xo/xo/tree/master/_examples/northwind
-
What’s your preferred setup to work with SQL DB (without ORM) ?
i use xo . Reason is i prefer designing schema first and creating golang scaffolding later. Xo takes schema and gives me basic create/update/delete operations by default and i can also generate gocode for any sql queries that i write.
- Show HN: A Go framework for your projects
-
sqlc: Generating go code from sql statements
Thanks for sharing your thoughts! I see that it works best with Postgresql. The other commenter mentioned https://github.com/xo/xo for MySql which might work well.
-
Show HN: A Full-Stack Web Framework Written in Go
Thanks for your comment and question @onionisfruit. Top-notch handle too!
>> What are your plans for models and persistence?
I haven't worked out all the details, but it's going to be some blend of https://github.com/xo/xo and https://sqlc.dev/.
Design goals:
1. High-level, type-safe "ORM" that's generated from your database schema.
What are some alternatives?
chai - Modern embedded SQL database
sqlc - Generate type-safe code from SQL
ffi-overhead - comparing the c ffi (foreign function interface) overhead on various programming languages
igor - igor is an abstraction layer for PostgreSQL with a gorm like syntax.
sqlite - Go SQLite3 driver
SQLBoiler - Generate a Go ORM tailored to your database schema.
go-sqlite3 - sqlite3 driver for go using database/sql
prometheus - The Prometheus monitoring system and time series database.
sqlparser-rs - Extensible SQL Lexer and Parser for Rust
BTrDB - Berkeley Tree Database (BTrDB) server
proteus - A simple tool for generating an application's data access layer.
dat - Go Postgres Data Access Toolkit