Retry renameFile operations on windows (#4605)

diff --git a/lib/src/io.dart b/lib/src/io.dart
index fd9f646..04e3b05 100644
--- a/lib/src/io.dart
+++ b/lib/src/io.dart
@@ -577,7 +577,9 @@
 
 void renameFile(String from, String to) {
   log.io('Renaming "$from" to "$to".');
-  File(from).renameSync(to);
+  _attempt('Renaming `$from` to `$to`', () {
+    File(from).renameSync(to);
+  });
 }
 
 bool _isDirectoryNotEmptyException(FileSystemException e) {