[flutter_tools] do not set timestamp of package_config file (#57077)
diff --git a/packages/flutter_tools/lib/src/dart/pub.dart b/packages/flutter_tools/lib/src/dart/pub.dart
index 2abf33f..3f28f6e 100644
--- a/packages/flutter_tools/lib/src/dart/pub.dart
+++ b/packages/flutter_tools/lib/src/dart/pub.dart
@@ -223,7 +223,7 @@
}
if (!packageConfigFile.existsSync()) {
- throwToolExit('$directory: pub did not create .packages file.');
+ throwToolExit('$directory: pub did not create .dart_tools/package_config.json file.');
}
if (pubSpecYaml.lastModifiedSync() != originalPubspecYamlModificationTime) {
throwToolExit(
@@ -232,8 +232,6 @@
}
// We don't check if dotPackages was actually modified, because as far as we can tell sometimes
// pub will decide it does not need to actually modify it.
- // Since we rely on the file having a more recent timestamp, though, we do manually force the
- // file to be more recently modified.
final DateTime now = DateTime.now();
if (now.isBefore(originalPubspecYamlModificationTime)) {
_logger.printError(
@@ -243,18 +241,6 @@
'The timestamp was: $originalPubspecYamlModificationTime\n'
'The time now is: $now'
);
- } else {
- packageConfigFile.setLastModifiedSync(now);
- final DateTime newDotPackagesTimestamp = packageConfigFile.lastModifiedSync();
- if (newDotPackagesTimestamp.isBefore(originalPubspecYamlModificationTime)) {
- _logger.printError(
- 'Warning: Failed to set timestamp of "${_fileSystem.path.absolute(packageConfigFile.path)}". '
- 'Tried to set timestamp to $now, but new timestamp is $newDotPackagesTimestamp.'
- );
- if (newDotPackagesTimestamp.isAfter(now)) {
- _logger.printError('Maybe the file was concurrently modified?');
- }
- }
}
}
diff --git a/packages/flutter_tools/test/general.shard/dart/pub_get_test.dart b/packages/flutter_tools/test/general.shard/dart/pub_get_test.dart
index e53c611..c8cc138 100644
--- a/packages/flutter_tools/test/general.shard/dart/pub_get_test.dart
+++ b/packages/flutter_tools/test/general.shard/dart/pub_get_test.dart
@@ -338,8 +338,6 @@
expect(logger.statusText, 'Running "flutter pub get" in /...\n');
expect(logger.errorText, isEmpty);
expect(fileSystem.file('pubspec.yaml').lastModifiedSync(), DateTime(2001)); // because nothing should touch it
- expect(fileSystem.file('.dart_tool/package_config.json').lastModifiedSync(), isNot(DateTime(2000))); // because pub changes it to 2002
- expect(fileSystem.file('.dart_tool/package_config.json').lastModifiedSync(), isNot(DateTime(2002))); // because we set the timestamp again after pub
logger.clear();
// bad scenario 1: pub doesn't update file; doesn't matter, because we do instead
@@ -352,8 +350,6 @@
expect(logger.statusText, 'Running "flutter pub get" in /...\n');
expect(logger.errorText, isEmpty);
expect(fileSystem.file('pubspec.yaml').lastModifiedSync(), DateTime(2001)); // because nothing should touch it
- expect(fileSystem.file('.dart_tool/package_config.json').lastModifiedSync(), isNot(DateTime(2000))); // because we set the timestamp
- expect(fileSystem.file('.dart_tool/package_config.json').lastModifiedSync(), isNot(DateTime(2002))); // just in case FakeProcessManager is buggy
logger.clear();
// bad scenario 2: pub changes pubspec.yaml instead
@@ -370,7 +366,6 @@
expect(logger.statusText, 'Running "flutter pub get" in /...\n');
expect(logger.errorText, isEmpty);
expect(fileSystem.file('pubspec.yaml').lastModifiedSync(), DateTime(2002)); // because fake pub above touched it
- expect(fileSystem.file('.dart_tool/package_config.json').lastModifiedSync(), DateTime(2000)); // because nothing touched it
// bad scenario 3: pubspec.yaml was created in the future
fileSystem.file('.dart_tool/package_config.json')