DBIO

 view release on metacpan or  search on metacpan

docs/adr/0006-native-deploy-owns-sql-generation.md  view on Meta::CPAN


## Context

DBIx::Class generated DDL through `SQL::Translator`: `deployment_statements()`
handed the schema to SQLT, which translated the in-memory model into
engine-specific `CREATE TABLE` SQL on the fly. SQLT was therefore a hard runtime
dependency of any DBIx::Class app that deployed a schema, and the quality of the
DDL was bounded by SQLT's producer for each engine.

The DBIO fork split every database into its own driver distribution (ADR 0001 /
Heritage). That split makes a per-engine DDL producer owned by the driver the
natural home for deployment, and removes the reason to route DDL through a
central translator that no driver controls.

## Decision

Each DBIO driver owns native DDL generation; `SQL::Translator` is demoted to an
optional dependency; and `deployment_statements()` changes contract — it no
longer generates SQL on the fly.

- The native deploy layer is rooted at `DBIO::Deploy::Base`



( run in 0.501 second using v1.01-cache-2.11-cpan-7fcb06a456a )