HomePlaygroundExpressionsDocsDriversStatusChangelog GitHub

v0.14.3

December 31, 2025 Latest

Added

  • qail migrate create now generates timestamped .up.qail and .down.qail file pairs
  • Format: YYYYMMDDHHMMSS_name.up.qail / YYYYMMDDHHMMSS_name.down.qail
  • Inline metadata: @name, @created, @author, @depends
  • Example: qail migrate create add_users --author "orion"

v0.14.2

December 31, 2025
🎉 100% PostgreSQL Coverage - Expressions, DML, and DDL

Wire Protocol Encoders (AST-Native)

  • DISTINCT ON (col1, col2, ...) queries
  • COUNT(*) FILTER (WHERE ...) aggregate syntax
  • Window FRAME clause (ROWS/RANGE BETWEEN ... AND ...)
  • GROUP BY with ROLLUP, CUBE, and GROUPING SETS
  • CREATE VIEW and DROP VIEW DDL
  • Comprehensive tests: complex_test.rs, expr_test.rs

Expression System (100% Grammar Coverage)

  • Expr::ArrayConstructor - ARRAY[col1, col2, ...]
  • Expr::RowConstructor - ROW(a, b, c)
  • Expr::Subscript - Array/string subscripting arr[1]
  • Expr::Collate - Collation expressions col COLLATE "C"
  • Expr::FieldAccess - Composite field selection (row).field
  • GroupByMode::GroupingSets - GROUPING SETS ((a, b), (c))
  • Action::CreateView and Action::DropView

CLI Improvements

  • qail diff --pretty displays MigrationClass (reversible/data-losing/irreversible)

Changed

  • Expr::Window.params from Vec<Value> to Vec<Expr> for native AST philosophy

v0.14.1

December 30, 2025

Fixed

  • Critical bug in encode_update() where column names were encoded as $1 placeholders

Added

  • Comprehensive battle test suite (battle_test.rs) with 19 query operations
  • Modularized values.rs into values/ directory

v0.14.0

December 30, 2025

Added

  • MigrationClass enum for classifying migrations: Reversible, DataLosing, Irreversible
  • Type safety warnings for unsafe rollbacks
  • FK ordering regression tests for parent-before-child table creation

Changed

  • Modularized migrations.rs (1044 lines) into 9 focused modules

v0.13.x

December 2025
  • CTE with RECURSIVE support
  • Connection pooling for qail-pg
  • Enhanced JOIN condition encoding
  • COPY protocol for bulk inserts

Earlier Versions

For complete history, see the full changelog on GitHub .