anchor.diff:    String workingDirectory,
     bool allowReentrantFlutter: false,
     Map<String, String> environment
  -}) async {
  +}) {
     _traceCommand(cmd, workingDirectory: workingDirectory);
  -  final Process process = await processManager.start(
  -    cmd,
  -    workingDirectory: workingDirectory,
  -    environment: _environment(allowReentrantFlutter, environment)
  -  );
  -  return process;
  +  return processManager.start(
  +    cmd,
  +    workingDirectory: workingDirectory,
  +    environment: _environment(allowReentrantFlutter, environment),
  +  );
   }
   
   /// This runs the command and streams stdout/stderr from the child process to
  
positive.code:           printStatus(message);
        }
      });
    process.stderr
      .transform(UTF8.decoder)
      .transform(const LineSplitter())
      .where((String line) => filter == null ? true : filter.hasMatch(line))
  
negative.code: 
    // Wait for stdout to be fully processed
    // because process.exitCode may complete first causing flaky tests.
    await Future.wait(<Future<Null>>[
      stdoutSubscription.asFuture<Null>(),
      stderrSubscription.asFuture<Null>(),
    ]);
    stdoutSubscription.cancel();
    stderrSubscription.cancel();
  
    return await process.exitCode;
  }
  