Migrator: do not generate edit details twice on rerun
Fixes https://github.com/dart-lang/sdk/issues/44086
Change-Id: I99a23e5922a716bbd0c83e7c0f620686840ccd4c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172300
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
diff --git a/pkg/nnbd_migration/lib/src/front_end/non_nullable_fix.dart b/pkg/nnbd_migration/lib/src/front_end/non_nullable_fix.dart
index 7b21c71..136711e 100644
--- a/pkg/nnbd_migration/lib/src/front_end/non_nullable_fix.dart
+++ b/pkg/nnbd_migration/lib/src/front_end/non_nullable_fix.dart
@@ -122,7 +122,7 @@
/// file, and the analysis_options.yaml file, each only if necessary.
///
/// [neededPackages] is a map whose keys are the names of packages that should
- /// be dependend upon by the package's pubspec, and whose values are the
+ /// be depended upon by the package's pubspec, and whose values are the
/// minimum required versions of those packages.
void processPackage(Folder pkgFolder, Map<String, Version> neededPackages) {
var pubspecFile = pkgFolder.getChildAssumingFile('pubspec.yaml');
@@ -156,7 +156,6 @@
Future<MigrationState> rerun() async {
reset();
var state = await rerunFunction();
- await state.refresh(_logger);
return state;
}
diff --git a/pkg/nnbd_migration/lib/src/preview/preview_site.dart b/pkg/nnbd_migration/lib/src/preview/preview_site.dart
index f433446..4fabe98 100644
--- a/pkg/nnbd_migration/lib/src/preview/preview_site.dart
+++ b/pkg/nnbd_migration/lib/src/preview/preview_site.dart
@@ -364,7 +364,9 @@
Future<void> rerunMigration() async {
migrationState = await rerunFunction();
- reset();
+ if (!migrationState.hasErrors) {
+ reset();
+ }
}
void reset() {