data_migration 1.0.0 copy "data_migration: ^1.0.0" to clipboard
data_migration: ^1.0.0 copied to clipboard

A library for applying a series of migrations to update old versions of data structures to the most recent one.

Data Migration #

ci License: MIT coverage

A library for applying a series of migrations to update old versions of data structures to the most recent one.

Installation #

dependencies:
  data_migration:

How to use #

  1. Create your set of migration

    class CounterV1DataMigration implements DataMigration {
      const CounterV1DataMigration();
    
      @override
      int get fromVersion => 1;
    
      @override
      int get toVersion => 2;
    
      @override
      Future<dynamic> migrate(dynamic data) async {
        final counter = SimpleCounter(data as int);
        return counter.toJson();
      }
    }
    
    final migrator = DataMigrationManager(
      [
        CounterV1DataMigration(),
      ],
    );
    
  2. Apply migration on data

      final migrated1 = await _migrator.migrateIfNeeded(
         3,
         fromVersion: 1,
      );
    

Examples #

In the example and tests, there are some examples of "data migration."

2
likes
160
points
18
downloads

Publisher

verified publishermattiapispisa.it

Weekly Downloads

A library for applying a series of migrations to update old versions of data structures to the most recent one.

Homepage
Repository (GitHub)

Topics

#migration #data #json #serializable

Documentation

API reference

License

MIT (license)

More

Packages that depend on data_migration