anchor.diff:    /** Environment for the command */
     Map<String, String> environmentOverrides;
   
  +  /** Working directory for the command */
  +  final String workingDirectory;
  +
     ProcessCommand._(String displayName, this.executable,
                      this.arguments,
  -                   [this.environmentOverrides = null])
  +                   [this.environmentOverrides = null,
  +                    this.workingDirectory = null])
         : super._(displayName) {
       if (io.Platform.operatingSystem == 'windows') {
         // Windows can't handle the first command if it is a .bat file or the like
  
positive.code:       }
  
        if (!deepJsonCompare(arguments, other.arguments)) return false;
        if (!deepJsonCompare(environmentOverrides, other.environmentOverrides)) {
          return false;
        }
  
negative.code:   }
  
    Command getProcessCommand(String displayName, executable, arguments,
                       [environment = null, workingDirectory = null]) {
      var command = new ProcessCommand._(displayName, executable, arguments,
                                         environment, workingDirectory);
      return _getUniqueCommand(command);
    }
  
  