godolt v0.1.0 Release Notes
Release Date: 2026-08-16
Overview
godolt wraps Dolt's operational surface for Go programs, following the gogit precedent — a standalone, dependency-light service-integration module. This is the initial release: a SQL-wire client for the primary workload (many concurrent sessions against dolt sql-server), plus CLI-exec operations for the cold path (bootstrap, before a server exists) and backups (no SQL-callable equivalent exists).
Highlights
- SQL-wire
Clientfor remotes, push/pull/fetch, and active branch — zero added driver dependencies, the caller supplies the*sql.DB - CLI-exec bootstrap (
Clone,InitDir) and backup (BackupAdd,BackupSync,BackupRestore) operations for the cold path
Installation
go get github.com/grokify/godolt@v0.1.0
Features
SQL-wire client (the primary workload)
New(db *sql.DB) *Client— wraps an existing connection to adolt sql-server; the caller owns the driver, pooling, and DSNClient.RemoteAdd,Client.RemoteRemove,Client.Remotes— register, remove, and list configured remotes viaCALL DOLT_REMOTE(...)Client.Push,Client.Pull,Client.Fetch— sync against a remote viaCALL DOLT_PUSH/DOLT_PULL/DOLT_FETCH, returning the server's status messageClient.ActiveBranch— the connection's active branch viaSELECT active_branch()- Argument validation (
quotable) rejects characters that could escape a single-quoted SQL literal, since Dolt stored procedures don't support placeholders in all versions
CLI-exec cold path
Clone(ctx, remoteURL, dir)— clone a remote into a fresh directoryInitDir(ctx, dir, name, email)— initialize a new Dolt database directory with a committer identityAvailable()— reports whether thedoltCLI is onPATHBackupAdd,BackupSync,BackupRestore— named backup targets, snapshot/sync, and restore (--forceto overwrite an existing restore directory); noDOLT_BACKUPstored procedure exists, so these are CLI-exec only. Verified safe to run against a directory a livedolt sql-serveris actively serving
Use Cases
- Multi-tenant services — many concurrent sessions against a shared
dolt sql-server, without an embedded-driver bottleneck - Service bootstrap — initialize or clone a Dolt database directory before a server exists to connect to
- Operational backups — schedule backup sync against a live server without stopping it first
Documentation
- README with installation, usage examples, and a full API reference table
- MIT license
- README badges for CI, lint, SAST, godoc, MkDocs, visualization, and license status
Build
- Shared CI workflows: Go CI (test matrix across Linux/macOS/Windows), Go Lint (golangci-lint), Go SAST (CodeQL), and Dependabot config
.gitignorefor MkDocs build output and local env files
License
MIT