restoreFromBackup static method

Future<BackupRestoreResult> restoreFromBackup()

Restore pubspec.yaml from backup.

Returns a BackupRestoreResult that distinguishes between:

Implementation

static Future<BackupRestoreResult> restoreFromBackup() async {
  final backupFile = File(FileConfig.backupFile);

  if (!backupFile.existsSync()) {
    return const BackupRestoreResult(
      RestoreStatus.noBackup,
      'No backup file found (${FileConfig.backupFile}). '
      'Run smartpub clean first to create one.',
    );
  }

  try {
    await backupFile.copy(FileConfig.pubspecFile);
    return const BackupRestoreResult(RestoreStatus.success);
  } catch (e) {
    return BackupRestoreResult(RestoreStatus.ioError, 'Restore failed: $e');
  }
}