Skip to content

docs: add granular framework and SQLite emulation comparisons - #176

Merged
jogibear9988 merged 1 commit into
masterfrom
codex/detailed-framework-comparison
Sep 22, 2026
Merged

jogibear9988 merged 1 commit into
masterfrom
codex/detailed-framework-comparison

Conversation

@jogibear9988

Copy link
Copy Markdown
Member

Summary

The homepage comparison is too brief to explain provider-specific behavior or SQLite emulation. Add a detailed, source-linked Markdown guide and link directly to both the full comparison and its SQLite section from the homepage.

  • Compare Migrator, FluentMigrator, EF Core, DbUp and Evolve across authoring, schema/data operations, history, repeatability, transactions, rollback, coordination, deployment and provider coverage.
  • Include additional EF6, grate and RoundhousE coverage, plus a limited Flyway/Liquibase comparison.
  • Document Migrator SQLite support operation by operation: automatic table rebuilds, native operations, dependency handling, and schema/data preservation limits.
  • Compare SQLite behavior with FluentMigrator and EF Core, distinguishing automatic emulation from user-authored SQL in script runners.
  • Pin inspected Migrator and FluentMigrator source revisions, identify engine-version dependencies, and explicitly mark unsupported or unverified behavior.

This is a documentation-only change, prepared in a separate worktree from the parallel refactoring. The comparison records the inspected implementations; it is not a benchmark or a claim of runtime compatibility across all releases. Homepage links target the guide on master and become available after merge.

Validation

  • SQLite test suite: 139 passed, 1 existing skipped test, 0 failed.
  • Existing skip: ChangeColumn_RemoveDefaultValue_Success (issue Default value is not reset on ChangeColumn #139).
  • Validated 69 Markdown reference definitions, internal section anchors, table structure and both homepage links.
  • git diff --check passed.
  • Competitor behavior was checked against official documentation and implementation sources; competitor runtime suites were not executed.

Add a source-linked feature guide covering Migrator, FluentMigrator,
EF Core, DbUp and Evolve, with additional EF6, grate, RoundhousE,
Flyway and Liquibase coverage.

Compare authoring, schema operations, migration history, repeatability,
transactions, rollback, coordination, deployment and database coverage.
Distinguish built-in capabilities from configuration and custom SQL.

Document SQLite support operation by operation, including Migrator's
table-rebuild emulation, dependency handling and preservation limits.
Compare those paths with FluentMigrator and EF Core implementations
and manual SQL workflows. Pin inspected source revisions and identify
engine-version differences and unverified provider behavior.

Link the full guide and SQLite section from the GitHub Pages homepage.
Keep all work isolated from the parallel refactoring checkout.

Validation:
- SQLite suite: 139 passed, 1 existing skipped test, 0 failed.
- Validated 69 reference definitions, section anchors and table structure.
- Verified both homepage comparison links and git diff --check.
- Competitor findings use source/documentation review, not runtime tests.
Copilot AI lite review requested due to automatic review settings September 22, 2026 12:43
@jogibear9988
jogibear9988 merged commit b7ae95c into master Sep 22, 2026
12 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

The SQLite documentation needs its preservation and foreign-key restoration qualifications addressed before approval.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 2 Low severity

Open (2)
What changed in this PR

Adds a source-linked migration framework comparison and detailed SQLite emulation guidance, with homepage links to both.

Changes:

  • Compares migration frameworks, providers, and operational behavior.
  • Documents SQLite rebuild behavior, limitations, and validation scope.
  • Links the guide and SQLite section from the homepage.
File Summary
docs/​migration-framework-comparison.md Adds the framework comparison and SQLite guide.
docs/​index.html Adds links to the guide and SQLite section.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

| Mapped rows | Named-column `INSERT … SELECT`. | New constraints/types must accept the data. |
| Names, parsed types, nullability, defaults | Included in column model. | Not a lossless representation of arbitrary CREATE SQL. |
| Composite PKs | Represented; dedicated rebuild test. | Check membership/order when replacing definitions. |
| FKs and delete actions | Read from schema/PRAGMA; emitted into replacement DDL. | Not a promise about every clause, e.g. arbitrary deferrability. |
| `WITHOUT ROWID`, `STRICT`, generated columns | Not modeled as a complete round-trip contract. | No blanket preservation claim for external schemas. |
| Hidden `rowid` / AUTOINCREMENT high-water mark | Only mapped columns copied; no explicit sequence-state restoration. | Historical rowid/sequence metadata may change. |
| Type / length enforcement | Changes declarations, not SQLite typing rules. | Declared size is not SQL Server-like length enforcement. |
| FK enforcement state | Runner disables before migration and restores after successful execution. | Direct provider calls differ; exception restoration is not proven by success-path tests. |
@jogibear9988
jogibear9988 deleted the codex/detailed-framework-comparison branch September 22, 2026 19:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants