Conversation
Contributor
Coverage Report
|
Introduces a complete migration workflow: - Schema diffing engine that compares TypeScript config against the live database - SQL migration file generation with timestamped naming - Safety checks inspired by strong_migrations (warns on drops, unsafe type casts, etc.) - Migration runner with PostgreSQL advisory locking for concurrent safety - Migration tracking table (_orm_migrations) with checksum verification - Support for non-transactional migrations via -- orm:no-transaction directive - CLI commands: orm generate migration, orm db migrate, orm db migrate status - Programmatic API: migrate.generate(), migrate.run(), migrate.status() Also enhances getForeignKeys to return onUpdate/onDelete actions and getUniqueConstraints to return structured column data and nullsNotDistinct. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3bdd4fb to
955b5fd
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
SchemaSnapshotintermediate representationstrong_migrationsgem) warns on unsafe operations like dropping tables/columns or unsafe type casts_orm_migrationstable with SHA-256 checksum verificationCREATE INDEX CONCURRENTLY) via-- orm:no-transactiondirectiveorm generate migration --name <desc>,orm db migrate,orm db migrate statusmigrate.generate(),migrate.run(),migrate.status()for app-startup usagegetForeignKeysto returnonUpdate/onDeleteactionsgetUniqueConstraintsto return structured column data andnullsNotDistinctTest plan
orm-migratetests pass (67/67)orm-clitests pass (100/100)🤖 Generated with Claude Code