processProvider top-level property

ScopedRef<Process> processProvider
final

Implementation

final processProvider = create<Process>(() {
  return (
    String executable,
    List<String> arguments, {
    String? workingDirectory,
    Map<String, String>? environment,
    bool includeParentEnvironment = true,
    bool runInShell = false,
    io.ProcessStartMode mode = io.ProcessStartMode.normal,
  }) async {
    final process = await io.Process.start(
      executable,
      arguments,
      workingDirectory: workingDirectory ?? fs.currentDirectory.path,
      environment: environment,
      includeParentEnvironment: includeParentEnvironment,
      runInShell: runInShell,
      mode: mode,
    );

    return ProcessDetails(
      stdout: process.stdout,
      stderr: process.stderr,
      pid: process.pid,
      exitCode: process.exitCode,
    );
  };
});