anchor.diff:  /// Runs a process and exits likewise if the process exits non-zero, but let the
   /// child process inherit out stdio handles.
   Future<ProcessResult> runProcessInheritStdio(
  -    String executable, List<String> arguments) async {
  +    String executable, List<String> arguments,
  +    {bool runInShell = false}) async {
     final process = await Process.start(executable, arguments,
  -      mode: ProcessStartMode.inheritStdio);
  +      mode: ProcessStartMode.inheritStdio, runInShell: runInShell);
     final exitCode = await process.exitCode;
     final processResult = new ProcessResult(process.pid, exitCode, "", "");
     if (processResult.exitCode != 0) {
  
positive.code:             "--test-list=$deflakeListPath",
            ])
            ..addAll(options.rest);
          await runProcessInheritStdio("tools/test.py", deflakeArguments);
          deflakingResultsPaths.add("${deflakeDirectory.path}/results.json");
        }
        // Update the flakiness information based on what we've learned.
  
negative.code:     return commit;
    }
    final arguments = ["merge-base", "$remote/$branch", "HEAD"];
    final result =
        await Process.run("git", arguments, runInShell: Platform.isWindows);
    if (result.exitCode != 0) {
      throw new Exception("Failed to run: git ${arguments.join(' ')}\n"
          "stdout:\n${result.stdout}\n"
  