Accept drift-named schema files

This commit is contained in:
Simon Binder 2021-10-14 21:44:44 +02:00
parent 219fbee99f
commit 849b0de040
No known key found for this signature in database
GPG Key ID: 7891917E4147B8C0
12 changed files with 26 additions and 23 deletions

View File

@ -1,3 +1,7 @@
## 1.0.3-dev
- Consider `drift`-named files when generating schema migrations ([#1486](https://github.com/simolus3/moor/issues/1486))
## 1.0.2 ## 1.0.2
- Also transform `analysis_options.yaml` files in the `drift_dev migrate` command. - Also transform `analysis_options.yaml` files in the `drift_dev migrate` command.

View File

@ -81,4 +81,9 @@ class FatalToolError implements Exception {
final String message; final String message;
FatalToolError(this.message); FatalToolError(this.message);
@override
String toString() {
return 'Fatal error: $message';
}
} }

View File

@ -222,7 +222,7 @@ class GenerateUtilsCommand extends Command {
String _filenameForVersion(int version) => 'schema_v$version.dart'; String _filenameForVersion(int version) => 'schema_v$version.dart';
static final _filenames = RegExp(r'moor_schema_v(\d+)\.json'); static final _filenames = RegExp(r'(?:moor|drift)_schema_v(\d+)\.json');
static final _dartfmt = DartFormatter(); static final _dartfmt = DartFormatter();
static const _prefix = '// GENERATED CODE, DO NOT EDIT BY HAND.'; static const _prefix = '// GENERATED CODE, DO NOT EDIT BY HAND.';
} }

View File

@ -2,25 +2,25 @@
//@dart=2.12 //@dart=2.12
import 'package:drift/drift.dart'; import 'package:drift/drift.dart';
import 'package:drift_dev/api/migrations.dart'; import 'package:drift_dev/api/migrations.dart';
import 'schema_v1.dart' as v1;
import 'schema_v2.dart' as v2; import 'schema_v2.dart' as v2;
import 'schema_v3.dart' as v3; import 'schema_v3.dart' as v3;
import 'schema_v4.dart' as v4; import 'schema_v4.dart' as v4;
import 'schema_v1.dart' as v1;
class GeneratedHelper implements SchemaInstantiationHelper { class GeneratedHelper implements SchemaInstantiationHelper {
@override @override
GeneratedDatabase databaseForVersion(QueryExecutor db, int version) { GeneratedDatabase databaseForVersion(QueryExecutor db, int version) {
switch (version) { switch (version) {
case 1:
return v1.DatabaseAtV1(db);
case 2: case 2:
return v2.DatabaseAtV2(db); return v2.DatabaseAtV2(db);
case 3: case 3:
return v3.DatabaseAtV3(db); return v3.DatabaseAtV3(db);
case 4: case 4:
return v4.DatabaseAtV4(db); return v4.DatabaseAtV4(db);
case 1:
return v1.DatabaseAtV1(db);
default: default:
throw MissingSchemaException(version, const {1, 2, 3, 4}); throw MissingSchemaException(version, const {2, 3, 4, 1});
} }
} }
} }

View File

@ -5,8 +5,7 @@ import 'package:drift/drift.dart';
class UsersData extends DataClass implements Insertable<UsersData> { class UsersData extends DataClass implements Insertable<UsersData> {
final int id; final int id;
UsersData({required this.id}); UsersData({required this.id});
factory UsersData.fromData(Map<String, dynamic> data, GeneratedDatabase db, factory UsersData.fromData(Map<String, dynamic> data, {String? prefix}) {
{String? prefix}) {
final effectivePrefix = prefix ?? ''; final effectivePrefix = prefix ?? '';
return UsersData( return UsersData(
id: const IntType() id: const IntType()
@ -118,7 +117,7 @@ class Users extends Table with TableInfo<Users, UsersData> {
Set<GeneratedColumn> get $primaryKey => {id}; Set<GeneratedColumn> get $primaryKey => {id};
@override @override
UsersData map(Map<String, dynamic> data, {String? tablePrefix}) { UsersData map(Map<String, dynamic> data, {String? tablePrefix}) {
return UsersData.fromData(data, _db, return UsersData.fromData(data,
prefix: tablePrefix != null ? '$tablePrefix.' : null); prefix: tablePrefix != null ? '$tablePrefix.' : null);
} }

View File

@ -6,8 +6,7 @@ class UsersData extends DataClass implements Insertable<UsersData> {
final int id; final int id;
final String name; final String name;
UsersData({required this.id, required this.name}); UsersData({required this.id, required this.name});
factory UsersData.fromData(Map<String, dynamic> data, GeneratedDatabase db, factory UsersData.fromData(Map<String, dynamic> data, {String? prefix}) {
{String? prefix}) {
final effectivePrefix = prefix ?? ''; final effectivePrefix = prefix ?? '';
return UsersData( return UsersData(
id: const IntType() id: const IntType()
@ -141,7 +140,7 @@ class Users extends Table with TableInfo<Users, UsersData> {
Set<GeneratedColumn> get $primaryKey => {id}; Set<GeneratedColumn> get $primaryKey => {id};
@override @override
UsersData map(Map<String, dynamic> data, {String? tablePrefix}) { UsersData map(Map<String, dynamic> data, {String? tablePrefix}) {
return UsersData.fromData(data, _db, return UsersData.fromData(data,
prefix: tablePrefix != null ? '$tablePrefix.' : null); prefix: tablePrefix != null ? '$tablePrefix.' : null);
} }

View File

@ -6,8 +6,7 @@ class UsersData extends DataClass implements Insertable<UsersData> {
final int id; final int id;
final String name; final String name;
UsersData({required this.id, required this.name}); UsersData({required this.id, required this.name});
factory UsersData.fromData(Map<String, dynamic> data, GeneratedDatabase db, factory UsersData.fromData(Map<String, dynamic> data, {String? prefix}) {
{String? prefix}) {
final effectivePrefix = prefix ?? ''; final effectivePrefix = prefix ?? '';
return UsersData( return UsersData(
id: const IntType() id: const IntType()
@ -141,7 +140,7 @@ class Users extends Table with TableInfo<Users, UsersData> {
Set<GeneratedColumn> get $primaryKey => {id}; Set<GeneratedColumn> get $primaryKey => {id};
@override @override
UsersData map(Map<String, dynamic> data, {String? tablePrefix}) { UsersData map(Map<String, dynamic> data, {String? tablePrefix}) {
return UsersData.fromData(data, _db, return UsersData.fromData(data,
prefix: tablePrefix != null ? '$tablePrefix.' : null); prefix: tablePrefix != null ? '$tablePrefix.' : null);
} }
@ -164,8 +163,7 @@ class GroupsData extends DataClass implements Insertable<GroupsData> {
required this.title, required this.title,
this.deleted, this.deleted,
required this.owner}); required this.owner});
factory GroupsData.fromData(Map<String, dynamic> data, GeneratedDatabase db, factory GroupsData.fromData(Map<String, dynamic> data, {String? prefix}) {
{String? prefix}) {
final effectivePrefix = prefix ?? ''; final effectivePrefix = prefix ?? '';
return GroupsData( return GroupsData(
id: const IntType() id: const IntType()
@ -362,7 +360,7 @@ class Groups extends Table with TableInfo<Groups, GroupsData> {
Set<GeneratedColumn> get $primaryKey => {id}; Set<GeneratedColumn> get $primaryKey => {id};
@override @override
GroupsData map(Map<String, dynamic> data, {String? tablePrefix}) { GroupsData map(Map<String, dynamic> data, {String? tablePrefix}) {
return GroupsData.fromData(data, _db, return GroupsData.fromData(data,
prefix: tablePrefix != null ? '$tablePrefix.' : null); prefix: tablePrefix != null ? '$tablePrefix.' : null);
} }

View File

@ -6,8 +6,7 @@ class UsersData extends DataClass implements Insertable<UsersData> {
final int id; final int id;
final String name; final String name;
UsersData({required this.id, required this.name}); UsersData({required this.id, required this.name});
factory UsersData.fromData(Map<String, dynamic> data, GeneratedDatabase db, factory UsersData.fromData(Map<String, dynamic> data, {String? prefix}) {
{String? prefix}) {
final effectivePrefix = prefix ?? ''; final effectivePrefix = prefix ?? '';
return UsersData( return UsersData(
id: const IntType() id: const IntType()
@ -143,7 +142,7 @@ class Users extends Table with TableInfo<Users, UsersData> {
Set<GeneratedColumn> get $primaryKey => {id}; Set<GeneratedColumn> get $primaryKey => {id};
@override @override
UsersData map(Map<String, dynamic> data, {String? tablePrefix}) { UsersData map(Map<String, dynamic> data, {String? tablePrefix}) {
return UsersData.fromData(data, _db, return UsersData.fromData(data,
prefix: tablePrefix != null ? '$tablePrefix.' : null); prefix: tablePrefix != null ? '$tablePrefix.' : null);
} }
@ -166,8 +165,7 @@ class GroupsData extends DataClass implements Insertable<GroupsData> {
required this.title, required this.title,
this.deleted, this.deleted,
required this.owner}); required this.owner});
factory GroupsData.fromData(Map<String, dynamic> data, GeneratedDatabase db, factory GroupsData.fromData(Map<String, dynamic> data, {String? prefix}) {
{String? prefix}) {
final effectivePrefix = prefix ?? ''; final effectivePrefix = prefix ?? '';
return GroupsData( return GroupsData(
id: const IntType() id: const IntType()
@ -364,7 +362,7 @@ class Groups extends Table with TableInfo<Groups, GroupsData> {
Set<GeneratedColumn> get $primaryKey => {id}; Set<GeneratedColumn> get $primaryKey => {id};
@override @override
GroupsData map(Map<String, dynamic> data, {String? tablePrefix}) { GroupsData map(Map<String, dynamic> data, {String? tablePrefix}) {
return GroupsData.fromData(data, _db, return GroupsData.fromData(data,
prefix: tablePrefix != null ? '$tablePrefix.' : null); prefix: tablePrefix != null ? '$tablePrefix.' : null);
} }