anchor.diff:    String user;
   
     ///identity file for authentication of ssh based storage services
  -  ///NOTE: Password auth is not supported right now
     String identityFile;
   
  +  ///password or secret for string based secret authentication
  +  ///NOTE: identityFile will be preferred
  +  String password;
  +
  +  ///Suppress progress messages
     bool quiet;
   
     ///prints transcript on stdout
  
positive.code: 
        if (identityFile.isNotEmpty) {
          args..add("--identity")..add(identityFile);
        }
      }
  
      _log.fine(args.join(" "));
  
negative.code:     return runDuck(args);
    }
  
    ///lists directory content of a remote location
    ///if longFormat is true, list will provide additional moduification time data and permissions (as mask) for each entry
    Future listRemote(String remoteLocation, {bool longFormat: false}) {
      var command = (longFormat) ? "longlist" : "list";
      var args = [
        "--$command", _url.absolute(remoteLocation)
      ];
  
      return runDuck(args);
    }
  
  
    ///only to be feature complete
    Future<String> get version async {
      ProcessResult processResult = await runDuck(["--version"], addSessionParams: false);
  