Skip to content

v0.1.0

Choose a tag to compare

@marcelocantos marcelocantos released this 22 Feb 04:38
· 53 commits to master since this release

sqlift v0.1.0

Initial public release of sqlift — a declarative SQLite schema migration library for C++.

Features

  • Declarative schema: describe the end state as plain SQL DDL; sqlift computes the diff
  • Three-step workflow: extract() → diff() → apply(), with parse() as a convenience
  • Inspectable plans: review every SQL statement before execution
  • Destructive operation guard: dropping tables or columns requires explicit opt-in
  • Drift detection: SHA-256 hash detects out-of-band schema changes
  • 12-step table rebuild: follows SQLite's recommended procedure for safe column modifications
  • AddColumn fast path: simple ALTER TABLE ADD COLUMN when only appending nullable columns
  • Two files: the entire library is sqlift.h + sqlift.cpp
  • No runtime dependencies beyond SQLite3

Supported object types

Tables, indexes, views, and triggers.

Documentation

  • Guide — walkthrough of core concepts
  • Reference — complete API reference