//! Versioned schema support: serve multiple schema versions simultaneously.
//!
//! Modelled on pgroll. A migration is applied in two phases:
//!
//! - `start` applies the DDL and publishes a new schema `<schema>_<version>`
//! containing a view per table. The previous version's schema stays in place, so
//! clients on either version keep working during rollout.
//! - `complete` finalizes the migration and drops the previous version's schema.
//!
//! An incomplete migration can be rolled back instantly, because the previous
//! version was never removed. History is a linear parent chain with at most one
//! migration in progress, enforced by database constraints.
pub use ;
pub use ;
pub use ;
pub use ;