anchor.diff:  
   Future<String> promptPassword() {
     var completer = new Completer<String>();
  +  StreamSubscription stdinSubscription;
     
     stdout.write("Warning: If you didn't run this via run_update.sh your password will be displayed here until Dart has tty control.\n");
     stdout.write("Watch your back...\n");
     stdout.write("GitHub password for $gituser: ");
   
  -  stdin.listen((data){
  -    
  -    // scroll password out of view just in case...
  -    stdout.write("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
  -    
  -    var str = new String.fromCharCodes(data).replaceAll("\r", "").replaceAll("\n", "");
  -    
  -    completer.complete(str);
  -  });
  +  stdinSubscription = stdin
  +      .transform(new StringDecoder())
  +      .transform(new LineTransformer())
  +      .listen((String line){
  +        stdinSubscription.cancel();
  +        // scroll password out of view just in case...
  +        stdout.write("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
  +        var str = line.replaceAll("\r", "").replaceAll("\n", "");
  +        completer.complete(str);
  +      });
     
     return completer.future;
   }
  
positive.code:         print("Could not tell if package was uploaded or error happened.");
          completer.complete(false);
        }
      },onError:(error){
        print("catchError = $error");
        completer.completeError(error);
      });
  
negative.code:       
        StringBuffer onResponseBody = new StringBuffer();
        
        response.transform(new StringDecoder()).listen(
            (String data) => onResponseBody.write(data), 
            onError: (error) => completer.completeError(new AsyncError("$error")), 
            onDone:() {
              if (response.statusCode == 201) {
                print("Repository $gitname created successfully.");
                completer.complete(true);
              } else {
                print (onResponseBody.toString());
                print("Unable to create repository $gitname.");
                completer.complete(false);
              }
              client.close();
            });
      }, onError: (error) {
        completer.completeError(new AsyncError("$error"));
      });
  