diff --git a/pkgs/firehose/CHANGELOG.md b/pkgs/firehose/CHANGELOG.md index 81c33573..856ff27a 100644 --- a/pkgs/firehose/CHANGELOG.md +++ b/pkgs/firehose/CHANGELOG.md @@ -1,5 +1,6 @@ ## 0.13.2-wip +- Run `pub get` before `dart format` in `groundskeeper`. - Add `groundskeeper` executable to format and fix packages. - Add parameter to `locatePackages` to allow locating all packages with `publish_to: none`. - Inlined GitHub comment management into `firehose` as a first-class executable. diff --git a/pkgs/firehose/bin/groundskeeper.dart b/pkgs/firehose/bin/groundskeeper.dart index 182183fb..cf902f57 100644 --- a/pkgs/firehose/bin/groundskeeper.dart +++ b/pkgs/firehose/bin/groundskeeper.dart @@ -15,6 +15,7 @@ void main(List args) async { final argResults = parser.parse(args); final targetDirectory = Directory.current; + final pkgPath = targetDirectory.path; final runFormat = argResults['format'] != 'false'; final runFix = argResults['fix'] != 'false'; @@ -31,23 +32,9 @@ Error: Run fix is enabled, but no pubspec.yaml found in ${targetDirectory.path}' exit(1); } - if (runFormat) { - print('Running dart format...'); - final result = await Process.run( - 'dart', - ['format', targetDirectory.path], - ); - stdout.write(result.stdout); - stderr.write(result.stderr); - if (result.exitCode != 0) { - exit(result.exitCode); - } - } - - if (runFix) { + if (isPackage) { final repo = Repository(targetDirectory); final pkg = Package(targetDirectory, repo); - final pkgPath = targetDirectory.path; // Detect if it is a Flutter package final isFlutter = pkg.pubspec.dependencies.containsKey('flutter') || @@ -65,7 +52,22 @@ Error: Run fix is enabled, but no pubspec.yaml found in ${targetDirectory.path}' print('Error: $tool pub get failed in $pkgPath'); exit(pubGetResult.exitCode); } + } + if (runFormat) { + print('Running dart format...'); + final result = await Process.run( + 'dart', + ['format', pkgPath], + ); + stdout.write(result.stdout); + stderr.write(result.stderr); + if (result.exitCode != 0) { + exit(result.exitCode); + } + } + + if (runFix) { print(' Running dart fix --apply...'); final fixResult = await Process.run('dart', ['fix', '--apply'], workingDirectory: pkgPath);