Summary
Add SQLite SQL generation for schema migration operations.
The migration CLI already accepts --dialect sqlite, but migration generation currently supports only MySQL.
Current behavior
The schema diff engine produces portable migration operations.
Only MySqlGenerator converts those operations into SQL.
Requesting SQLite migration generation results in an error.
Expected behavior
The DB module must generate valid SQLite up and down migration scripts for all operations currently supported by the schema diff engine.
SQLite limitations must be handled explicitly.
Scope
Suggested files
modules/db/include/vix/db/mig/sql/SQLiteGenerator.hppmodules/db/src/mig/sql/SQLiteGenerator.cppmodules/db/tools/migrator/MakeMigrations.cppmodules/db/tests/sqlite_generator_test.cppmodules/db/CMakeLists.txt
Acceptance criteria
Non-goals
This issue does not include:
- PostgreSQL generation;
- full table-rebuild automation for every SQLite alteration;
- ORM migrations;
- database introspection.
Suggested labels
scope:dbtype:featuretestshelp wantedstatus:accepted
Summary
Add SQLite SQL generation for schema migration operations.
The migration CLI already accepts
--dialect sqlite, but migration generation currently supports only MySQL.Current behavior
The schema diff engine produces portable migration operations.
Only
MySqlGeneratorconverts those operations into SQL.Requesting SQLite migration generation results in an error.
Expected behavior
The DB module must generate valid SQLite up and down migration scripts for all operations currently supported by the schema diff engine.
SQLite limitations must be handled explicitly.
Scope
--dialect sqliteto the generator.Suggested files
modules/db/include/vix/db/mig/sql/SQLiteGenerator.hppmodules/db/src/mig/sql/SQLiteGenerator.cppmodules/db/tools/migrator/MakeMigrations.cppmodules/db/tests/sqlite_generator_test.cppmodules/db/CMakeLists.txtAcceptance criteria
--dialect sqlitegenerates migration files.Non-goals
This issue does not include:
Suggested labels
scope:dbtype:featuretestshelp wantedstatus:accepted