anchor.diff:          loadDocumentFromGoogle(name, version).then((doc) {
             print("Checking for updates and regenerating library if necessary.");
             var generator = new Generator(doc, prefix);
  -          if (generator.generateClient(outputdir, check: true, force: force)) {
  +          if (generator.generateClient(outputdir, check: true, force: force) || retry) {
               print("Committing changes to GitHub");
               var options = new ProcessOptions();
               options.workingDirectory = "$outputdir/$gitname/";
  
positive.code:           print("Failed Summary");
            print(sb.toString());
            if (retryAuto) {
              handleAPIs(failedUpload);
            } else {
              print("Retry Failed Upload (y)?");
              stdin.onData = () {
                var r = stdin.read();
                String retry = new String.fromCharCodes(r);
                if (retry[0].toLowerCase() == 'y') {
                  handleAPIs(failedUpload);
                }
                stdin.onData = null;
              };
  
negative.code: }
  
  // Force synchronous handling of APIs to prevent API Rate limits and processor overload
  void handleAPIs(List apis, {retry: false}) {
  
    if (apis.length > 0) {
      var api = apis.removeAt(0);
      print(api["gitname"]);
      handleAPI(api["name"], api["version"], api["gitname"], retry: retry)
      ..then((bool completed) {
        if (completed) {
          completedUpload.add(api);
  