MigrationHistory constructor
Implementation
MigrationHistory({required this.engine, required List<Migration> migrations})
: migrations = List.unmodifiable(migrations) {
var previous = 0;
for (final migration in migrations) {
if (migration.engine != engine) {
throw ArgumentError('A migration history cannot mix database engines.');
}
if (migration.version <= previous) {
throw ArgumentError('Migration versions must be strictly increasing.');
}
if (migration.fingerprint != migration.reviewedFingerprint) {
throw StateError(
'Migration ${migration.version} changed after review.',
);
}
previous = migration.version;
}
}