refreshDependencies function
Remove then re-add dependencies
Implementation
Future<void> refreshDependencies({bool isDev = false}) async {
Map<String, String> pluginsToUpdate = isDev
? PluginList.devPluginsToUpdate
: PluginList.pluginsToUpdate;
for (final pkg in pluginsToUpdate.keys) {
// Remove package
final removeArgs = ['pub', 'remove'];
if (isDev) removeArgs.add('--dev');
removeArgs.add(pkg);
print('🗑 Removing $pkg...');
var removeResult = await Process.run(
'flutter',
removeArgs,
runInShell: true,
);
stdout.write(removeResult.stdout);
stderr.write(removeResult.stderr);
// Add package again (latest)
final addArgs = ['pub', 'add'];
if (isDev) addArgs.add('--dev');
addArgs.add(pkg);
print('⬆️ Adding $pkg (latest)...');
var addResult = await Process.run('flutter', addArgs, runInShell: true);
stdout.write(addResult.stdout);
stderr.write(addResult.stderr);
}
}